python中的复杂循环



我有一个1000个项目的列表,对于每个项目,我需要执行一个需要30次迭代的循环的计算。然后,我想创建一个数组,编译30次迭代中的每一次的结果(以30x1000形状的数组结束(。有人对在python中实现这一点的最佳方法有什么建议吗?

谢谢!

Zack

您可以使用列表理解:

import numpy as np
arr_init = np.ones(1000)
# your function
def iterations():
return [i for i in range(30)]
# final array with 30 results per each value in arr_init
arr_final = np.array([np.array(iterations()) for i in arr_init]).T
print(arr_final.shape)
Out:
(30, 1000)

最新更新