使用for循环python遍历数组名称

时间:2018-12-22 18:08:49

标签: python arrays

我已经定义了3个数组:

array1[:,:,:]
array2[:,:,:]
array3[:,:,:]

在Unix中,我将执行以下操作:

for ((i=1;i<4;i++))
do 
a = array$i[:,:,:]*1000
echo a 
done

这将给出:

array1[:,:,:]
array2[:,:,:]
array3[:,:,:]

如何在Python的for循环中执行此操作?

2 个答案:

答案 0 :(得分:3)

完全合法的好方法吗?将这3个数组放在列表中,然后遍历该列表。

a1 = [1, 2, 3]
a2 = [4, 5]
a3 = [6]

array_list = [a1, a2, a3]

for a in array_list:
    print(a)

输出:

[1, 2, 3]
[4, 5]
[6]

这是理想的方法,理想情况下,您不应该摆弄名字。但是,是否可以使用全局变量。

a1 = [1, 2, 3]
a2 = [4, 5]
a3 = [6]

for i in range(1, 4): #range is right exclusive
    print(globals()['a' + str(i)])

输出:

[1, 2, 3]
[4, 5]
[6]

但是,仅仅因为有可能并不意味着建议这样做。

答案 1 :(得分:0)

要在python中执行此操作,像这样使用dict更加有意义(而我忽略了[:,:,:]是语法错误):

arrays = {}
arrays[1] = [:,:,:]
arrays[2] = [:,:,:]
arrays[3] = [:,:,:]

for i in arrays:
    a = arrays[i] * 1000
    print(a)