首页 > Python基础教程 >
-
python基础教程之 Python语法基础
python基础部分相对简单,属于动态语言,大小写敏感,代码块通过缩进表示(约定4个空格键进行缩进,没有格式化的功能),注释采用“#”开头,典型的脚本语言特征,文件以“.py”格式保存。
数据类型
1. 整数
python 中整数没有大小限制,超出一定范围就直接表示为 inf(无限大)
python 通常用十进制(-10000、1234)、十六进制(0xa2b3c4d5、0xff00)
python 整数的运算是精确的(10/3 = 3.3333333333333335,10//3 = 3 只取整数部分)
2. 浮点数
python 中浮点数没有大小限制,超出一定范围就直接表示为 inf(无限大)
python 中浮点数写法有两种 一般写法(1.234)科学记数法(123.4e-2)
python 浮点数的运算会有四舍五入的误差
3. 字符串
python 中字符串用 ''('abc')或者""("abc")表示 ,多行字符串用''' ''' ('''abc
def''')
python 中支持转义符,也可以通过r'abc'或r'''abc'''来屏蔽转义符
python 中支持占位符“ %d 整数 ”、“%f 浮点数”、“%s 字符串”、“%x 十六进制整数”
python 中支持 format() 格式化 “'我是 {0}, 体重{1:.1f}kg'.format('小明', 60.125)”
python 中字符串一般采用 “utf-8” 编码,在文本首行进行申明,如下:
# -*- coding:utf-8 -*-
# 验证 r 与多行字符串的显示 并且屏蔽转义符
print(r'''hello,\n
python''')
# 验证占位符的使用
print('abc%sef%.1f'%('d',12.345))
# 验证format()的使用
print('我是{0},体重{1:.1f}kg'.format('小明',60.125))
输出结果:
hello,\n
python
abcdef12.3
我是小明,体重60.1kg
4. 布尔值
python 中布尔值用True、False 表示(注意是大写)
python 中支持 "and"、"or"、"not" 运算
5. 空值
python 中空值用 “None” 表示是一个特殊的值,不同于“0”
6. 列表 list
Python内置的一种数据类型是列表:list。list是一种有序的集合,可以随时添加和删除其中的元素
list中的元素可以是不同的数据类型
#定义list
names = ['张三','李四','王五']
print(names)
#获取list元素个数
print(len(names))
#获取list某个元素
print(names[0])
#获取list倒数某个元素
print(names[-1])
#追加元素到末尾
names.append('赵六')
print(names)
#指定位置插入元素
names.insert(1,'456')
print(names)
#替换指定位置的元素
names[0]= 123
print(names)
#删除list末尾元素
names.pop()
print(names)
#删除指定位置的元素
names.pop(0)
print(names)
#list中嵌套list
ages = [16,17,18]
names.insert(1,ages)
print(names)
#得到list中嵌套list的某个元素
print(names[1][0])
输出结果:
['张三', '李四', '王五']
3
张三
王五
['张三', '李四', '王五', '赵六']
['张三', '456', '李四', '王五', '赵六']
[123, '456', '李四', '王五', '赵六']
[123, '456', '李四', '王五']
['456', '李四', '王五']
['456', [16, 17, 18], '李四', '王五']
16
7. 元组 tuple
元组:tuple。tuple和list非常类似,但是tuple一旦初始化就不能修改,没有增删改查的方法
#定义tuple
names=('张三','李四','王五')
print(names)
#定义 空的tuple
names = ()
print(names)
#定义 一个元素的tuple
names =('张三',)
print(names)
输出结果:
('张三', '李四', '王五')
()
('张三',)
8. 字典 dict
Python内置了字典:dict的支持,全称dictionary,在其他语言中也称为map,使用键-值(key-value)存储,具有极快的查找速度。优缺点与java的map一致
#定义dict
dicts = {'张三': 16, '李四': 17, '王五': 18}
print(dicts)
#根据key查找对应的value
print(dicts['张三'])
#替换key对应的value
dicts['张三']=20
print(dicts)
#判断key是否存在
print('赵六'in dicts)
#通过get方法取value,key不存在可以设置默认值
print(dicts.get('赵六',-1))
输出结果:
{'张三': 16, '李四': 17, '王五': 18}
16
{'张三': 20, '李四': 17, '王五': 18}
False
-1
9. 只存key的字典 set
set和dict类似,也是一组key的集合,但不存储value。由于key不能重复,所以,在set中,没有重复的key。
set可以看成无序和无重复元素的集合,可以做交集、并集等操作
# 定义Set
sets = set([1, 2, 4])
print(sets)
# 验证Set元素的唯一性
repeatSets = set([1,2,4,2,4,1])
print(repeatSets)
#set中 添加一个key
sets.add(3)
print(sets)
#set中 移除一个key
sets.remove(1)
print(sets)
#set 做交集、并集操作
s1 = set([1,2,3])
s2 = set([3,4,5])
print(s1&s2)
print(s1|s2)
输出结果:
{1, 2, 4}
{1, 2, 4}
{1, 2, 3, 4}
{2, 3, 4}
{3}
{1, 2, 3, 4, 5}
变量
python 中变量可以是任意数据类型
python 中同一个变量可以反复赋值,而且可以是不同类型的变量(动态语言的特性)
python 支持多种数据类型,在计算机内部,可以把任何数据都看成一个“对象”,而变量就是在程序中用来指向这些数据对象的,对变量赋值就是把数据和变量给关联起来
常量
python 中通常用全部大写的变量名表示常量 (PI = 3.14159265359)
条件语句
if...elif...
# if...else...
a = input("a: ") # int
b = input("b: ") # int
a = int(a)
b = int(b)
if (a > b):
print("max: ", a)
else:
print("max: ", b)
# if...elif...else...
score = input("score: ") # string
score = int(score)
if (score >= 90) and (score <= 100):
print("A")
elif (score >= 80 and score < 90):
print("B")
elif (score >= 60 and score < 80):
print("C")
else:
print("D")
输出结果:
a: 10
b: 15
max: 15
score: 60
C
循环语句
for...in...循环
# for...in...
a = 0
for x in range(5):
a = a + x
print(a)
输出结果:
0
1
3
6
10
while...循环
# while
n = 0
while n < 5:
n = n + 1
print(n)
输出结果:
1
2
3
4
5
关键字
break、continue 使用方法与其他语言相同
作者:猿来如痴
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。