0

我想要一个大小的数组,80并且只想用一个数字填充它。数字1,那么[1,1,1,1,1,80 times]有没有一种快速的方法呢?

4

3 回答 3

3

这可以解决问题:

lst = [1] * 80

请注意,对于可变对象(例如列表),这样做会创建对同一个列表的多个引用,因此当您更改其中一个列表时,您会更改所有其他列表。对于整数、字符串等不可变对象,这将非常有效。

使用可变对象,您可以这样做:

lst = [[] for i in range(80)]  # or xrange in Python 2

这将创建 80 个单独的列表。

于 2013-03-13T10:13:41.127 回答
1

由于整数是不可变的,您可以安全地这样做:

[1] * 80
于 2013-03-13T10:13:35.663 回答
0

你也可以这样做:

buildList = lambda val, size: [val for _ in xrange(size)]
buildList(1, 80)
于 2013-03-13T10:15:34.263 回答