列表生成式
会将所有的结果全部计算出来,把结果存放到内存中,如果列表中数据比较多,就会占用过多的内存空间,可能会导致MemoryError内存错误或者导致程序在运行时出现卡顿的情况
实例1:
在数字0-99中,取大于50的数,分为拼接在apple字符串后面,并存到一个列表中
一般的写法:
1 | messi = [] |
列表生成式的写法:
1 | l = ["apple%s" % i for i in range(100) if i > 50] |
实例2:
将一个列表中的每一个元素与一个字符串的每一个字符拼接,并保存到一个列表中
一般的写法:
1 | x1 = [1, 2, 3, 4] |
列表生成式的写法:
1 | x1 = [1, 2, 3, 4] |