当我已经知道列表最终会有的大小时,我可以设置list
的容量吗?我试图避免Python在append
项目时重新分配内存。
在构造函数中,设置capacity
,size
,length
或len
不起作用。
def merge_lists(a, b):
result = list(capacity=len(a) + len(b))
...
编辑: ...无需实际添加任何元素。
答案 0 :(得分:4)
假设你想要10个元素,你可以这样做:
l = [None] * 10
或
l = range(10)
答案 1 :(得分:1)
我认为你能得到的最接近的是:
In [1]: result = [0]*100
In [2]: len(result)
Out[2]: 100
这将使结果在你做任何事情之前保留100个元素。