我刚测试了系统的内存并注意到了一些事情:
Python 2:
from sys import getsizeof
x1 = range(50)
x2 = list(range(50))
getsizeof(x1) #472
getsizeof(x2) #568
x1==x2 #True
Python 3:
from sys import getsizeof
x1 = [x for x in range(50)]
x2 = list([x for x in range(50)])
getsizeof(x1) #528
getsizeof(x2) #560
x1==x2 #True
如果我在x2周围嵌套更多list()
个函数,它仍然只有一个。