创建大小为n且具有初始化值的数组

时间:2019-03-08 08:12:09

标签: python arrays

在python中,可以使用[] * n创建大小为n的数组,甚至可以使用[0] * n为所有项目初始化一个固定值。

是否可以执行类似的操作,但是使用500n初始化值?

例如,创建一个大小为10的数组将导致这种情况。

[0, 500, 1000, 1500, 2000, 2500, 3000, 3500, 4000, 4500]

我可以通过一个变量和一个for循环轻松实现此目标,如下所示,但我想一次性优化它,以传递到Robot Framework中。

arr = [0] * 10
for i, v in enumerate(arr):
  arr[i] = 500 * i

3 个答案:

答案 0 :(得分:8)

使用简单的理解:

[i*500 for i in range(n)]

答案 1 :(得分:2)

另一个答案为您提供了一种方法,这是另一个:

list(range(0, 500*n, 500))

答案 2 :(得分:1)

使用numpy数组始终是个好主意。它们具有更多功能,并且使用速度非常快(向量化形式,并且在后台快速编译了C代码)。您使用numpy的示例:

import numpy as np

nx = 10
a = 500*np.arange(nx)
a

给予:

array([   0,  500, 1000, 1500, 2000, 2500, 3000, 3500, 4000, 4500])