1.3. Python基础
1.3.1. 数据类型
整型
浮点
字符串
布尔
空值
1.3.2. 变量
常量
变量
1.3.3. 字符编码
anscii: 8位作为一1B来表示一个字母
unicode: 所有语言都编码进来。
utf-8: 可变长编码, 字母使用1B存储, 汉字通常是3个位
python3 中,字符串使用的是unicode编码的, 是支持所有语言的。
1.3.4. 转化
In [1]: '中文'.encode("utf-8")
Out[1]: b'\xe4\xb8\xad\xe6\x96\x87'
In [3]: b'\xe4\xb8\xad\xe6\x96\x87'.decode("utf-8")
Out[3]: '中文'
1.3.5. len函数
对于str类型来说len计算的是字符数, 对于bytes类型来说len计算的是bytes数。
1.3.6. 强制编码
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
1.3.7. 字符串格式化
In [4]: print('%2d-%02d' % (3, 1))
3-01
In [5]: 'Hello, {0}, 成绩提升了 {1:.1f}%'.format('小明', 17.125)
Out[5]: 'Hello, 小明, 成绩提升了 17.1%'
In [10]: print(f'show {b} is {a:.2f}')
show abc is 1.00
1.3.8. list
In [12]: students=["zhao","qian","sun","li"]
In [13]: students
Out[13]: ['zhao', 'qian', 'sun', 'li']
In [14]: students.append("zhou")
In [15]: students
Out[15]: ['zhao', 'qian', 'sun', 'li', 'zhou']
In [16]: students.pop()
Out[16]: 'zhou'
In [17]: students
Out[17]: ['zhao', 'qian', 'sun', 'li']
In [18]: students[-1]="demo"
In [19]: students
Out[19]: ['zhao', 'qian', 'sun', 'demo']
In [21]: students
Out[21]: ['first', 'zhao', 'qian', 'sun', 'demo']
1.3.9. tuple
因为tuple不可变,所以代码更安全
In [22]: students = ("zhao","qian","sun")
In [23]: students
Out[23]: ('zhao', 'qian', 'sun')
1.3.10. if
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
age = 30
if age>20 :
print("age >20")
if age<1:
print("婴儿")
elif age <3 :
print("学前")
elif age <18:
print("未成年")
else:
print("成年人")
1.3.11. match
这个match类似其他语言的switch
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
age = 30
match age :
case x if x <1:
print("婴儿")
case 10:
print("age =10 ")
case 20|21|22:
print("age >=20 <=22")
case _:
print('not sure.')
1.3.12. 循环
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
students = ["zhao","qian","sun"]
for stduent in students:
print(stduent)
for i in range(1,10):
print(i)
s=0
n=0
while n<=100:
s+=n
n+=1
print(n)
1.3.13. dict
高效的查找速度,
1.3.14. set
方便去重