Arrays 在Python 3.4中的每个循环步骤中创建一个新的数据数组

Arrays 在Python 3.4中的每个循环步骤中创建一个新的数据数组,arrays,numpy,python-3.4,Arrays,Numpy,Python 3.4,我正在用Python3.4编写一个脚本,我想更优雅地完成以下工作。 我在一个文件中有测量数据(2列,N行,N~1000)。为了计算平均值、方差等数量,我将数据读入如下: data_1 = numpy.genfromtxt('measurement_1.out',delimiter='\t') data_2 = numpy.genfromtxt('measurement_2.out',delimiter='\t') ... data_20 = numpy.genfromtxt('measureme

我正在用Python3.4编写一个脚本,我想更优雅地完成以下工作。 我在一个文件中有测量数据(2列,N行,N~1000)。为了计算平均值、方差等数量,我将数据读入如下:

data_1 = numpy.genfromtxt('measurement_1.out',delimiter='\t')
data_2 = numpy.genfromtxt('measurement_2.out',delimiter='\t')
...
data_20 = numpy.genfromtxt('measurement_20.out',delimiter='\t')
但是,我希望在循环中这样做,在循环中可以输入要考虑的测量数量(在示例中:number=20)。到目前为止,我的想法是这样的:

for i in range(1,number+1):
 data_'{}'.format(i) = np.genfromtxt('measurement_{}.out'.format(i), delimiter='\t')
这显然是行不通的


换句话说,我的问题是:如何在每个步骤中使用循环创建新的数组数据

您可以将它们存储在
dict
中。如果还想保留订单,可以使用
集合。OrderedDict

from collections import OrderedDict
import numpy as np

def get_data(number):
   my_data = OrderedDict()
   for i in range(1, number+1):
       my_data['data_{}'.format(i)] = np.genfromtxt('measurement_{}.out'.format(i), delimiter='\t')
   return my_data

将它们收集到列表中,并使用
数据[3]
表达式访问它们。