如何有效地初始化Python中特定长度的array.array

问题描述 投票:0回答:1

[查看Python中初始化array.array的可用方法,看来它们每个要么首先依赖创建单独的对象列表,要么提供可能可能需要堆重新分配和复制的可迭代对象,可能在追加时多次值。

是否有任何方法可以为特定长度的新array.array实例分配一次存储空间,而无需先分配相同长度的其他集合?

python arrays memory-efficient
1个回答
0
投票
尽管array.array的文档目前没有提及加法或乘法运算符,但事实证明array.array确实支持那些运算符,所以…

[在每个元素中初始化具有相同值的大实例的最直接(最有效的方法显然是创建一个长度为1的实例,并将其乘以所需数量的元素。

a = array('h', [0]) * 50000 print(len(a))

输出:

50000

© www.soinside.com 2019 - 2024. All rights reserved.