2-1 列表推导

写在前面

  • 容器序列

    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'}

 

原文地址:https://www.cnblogs.com/catleer/p/6856408.html