创建相同数字列表的有效方法?

时间:2013-03-30 23:00:09

标签: python numpy

使用n个元素创建相同数字列表的最有效方法是什么?

1 个答案:

答案 0 :(得分:13)

number = 1
elements = 1000

thelist = [number] * elements

>>> [1] * 10
[1, 1, 1, 1, 1, 1, 1, 1, 1, 1]

注意:不要尝试复制像这样的可变对象(特别是列表列表),否则会发生这种情况:

In [23]: a = [[0]] * 10

In [24]: a
Out[24]: [[0], [0], [0], [0], [0], [0], [0], [0], [0], [0]]

In [25]: a[0][0] = 1

In [26]: a
Out[26]: [[1], [1], [1], [1], [1], [1], [1], [1], [1], [1]]

如果您使用numpy,对于多维列表numpy.repeat是最好的选择。它可以在不同的轴上重复所有形状的数组。