列表生成式即List Comprehensions,是内置的用来创建列表的生成式。
example = [i*3 for i in range(1,50,2)] print(example) #这里将输出出结果[3, 9, 15, 21, 27, 33, 39, 45, 51, 57, 63, 69, 75, 81, 87, 93, 99, 105, 111, 117, 123, 129, 135, 141, 147]
然后是包含if条件判断的列表生成式,这个简洁、方便,一遍就能创建一个符合一定条件的列表。
例如:
example = [i**2 for i in range(0,15,2) if i**2 % 2 == 0] print(example) #这里将打印出结果: [0, 4, 16, 36, 64, 100, 144, 196]
当列表生成式生成一个非常大的列表时会引发异常(MemoryError)
比如: example = [7*i for i in range(10**1000)]