我创建了两个列表l1和l2,但是每个列表都有不同的创建方法:
import sys
l1 = [None] * 10
l2 = [None for _ in range(10)]
print('Size of l1 =', sys.getsizeof(l1))
print('Size of l2 =', sys.getsizeof(l2))
但是输出使我感到惊讶:
Size of l1 = 144
Size of l2 = 192
使用列表推导创建的列表在内存中更大,但是在Python中这两个列表是相同的。
这是为什么?这是CPython内部的东西,还是其他解释?
慕的地8271018
守着一只汪
相关分类