写在前面
-
容器序列
list、tuple和collections.deque这些序列能存放不同类型的数据
-
扁平序列
str、bytes、bytearray、memoryview和array.array,这类序列只能容纳一种类型
容器序列 存放的是它们所包含的任意类型的对象的引用,而 扁平序列 里存放的是值而不是引用。
序列类型还能按照是否能被修改来分类。
-
可变序列
list、bytearray、array.array、collection.deque和memoryview
-
不可变序列
tuple、str和bytes
list是一个可变序列,能同时存放不同类型的元素。 列表推导式是一种构建列表的方法。
列表推导和可读性
列表推导是构建列表( list )的快捷方式。
把一个字符串变成 Unicode 码位的列表的两种写法:
# 把一个字符串变成Unicode位码
symbols = '$¢£¥€¤'
codes = []
for symbol in symbols:
codes.append(ord(symbol))
print(codes)
# 另一种写法
codes2 = [ord(symbol) for symbol in symbols]
print(codes2)
>>>
[36, 162, 163, 165, 8364, 164]
[36, 162, 163, 165, 8364, 164]
这段代码中调用了一个内置函数ord():
ord()函数以一个字符(长度为1的字符串)作为参数,返回对应的ASCII数值,或者Unicode数值。
与之对应的chr()函数是以一个整形数字作为参数,范围为(0~255),返回一个对应的字符。
写在后面
怎么实现字典?
>>> t1 = ('a','b','c')
>>> t2 = ('1','2','3')
>>> d = dict(zip(t1,t2))
>>> print(d)
{'a': '1', 'b': '2', 'c': '3'}