Python查缺补漏1
Python查缺补漏1
除法
print(10 / 3) # 结果为小数
print(10 // 3) # 结果为整数
运行结果
3.3333333333333335
3
编码转换
print("'A' = ", ord('A')) # ord()获取字符的编码
print("65 =", chr(65)) # chr()将编码转换为对应的字符
运行结果
'A' = 65
65 = A
"""
由于Python的字符串类型是str, 在内存中以Unicode表示,
一个字符对应若干个字节。如果要在网络上传输, 或者保存到磁盘上,
就需要把str变为以字节为单位的bytes
"""
# Python对bytes类型的数据用带b前缀的单引号或双引号表示
x = b'ABC'
y = 'ABC'
# 以Unicode表示的str通过encode()方法可以编码为指定的bytes
print(y.encode('utf-8'))
# 要把bytes变为str,可以用decode()方法
print(x.decode('utf-8'))
"""
在操作字符串时, 我们经常遇到str和bytes的互相转换。
为了避免乱码问题, 应当始终坚持使用UTF-8编码对str和bytes进行转换。
"""
运行结果
b'ABC'
ABC
格式化输出
# 格式化输出
# 注意, %s永远起作用, 它会把任何数据类型转换为字符串
print("%2d-%02d" % (3, 1))
print("%.2f" % 3.1415926)
运行结果
3-01
3.14
定义元组
"""
定义只有一个元素的元组
"""
t = (1) # 1
t = (1,) # (1,)
只有1个元素的tuple定义时必须加一个逗号,
集合
set 和 dict 类似,也是一组 key 的集合,但不存储 value。由于 key 不能重复,所以,在 set 中,没有重复的 key
要创建一个 set,需要提供一个 list 作为输入集合:
>>> s = set([1, 2, 3])
>>> s
{1, 2, 3}
注意,传入的参数[1, 2, 3]
是一个list,而显示的{1, 2, 3}
只是告诉你这个 set 内部有1,2,3这3个元素,显示的顺序也不表示 set 是有序的
通过add(key)
方法可以添加元素到 set 中,可以重复添加,但不会有效果
通过remove(key)
方法可以删除元素
set可以看成数学意义上的无序和无重复元素的集合,因此,两个set可以做数学意义上的交集、并集、差集等操作:
>>> s1 = set([1, 2, 3])
>>> s2 = set([2, 3, 4])
>>> s1 & s2
{2, 3}
>>> s1 | s2
{1, 2, 3, 4}
>>> s1 - s2
{1}