Python:将.txt文件加载到不同的列表中

时间:2018-11-05 16:00:52

标签: python list

请原谅我的愚蠢问题,因为我是python的新手。

我有20个不同的.txt文件(例如,"myfile_%s"的{​​{1}}被归为范围为1.21的整数)。因此,我将它们加载如下:

s

因此,它们被加载到“ float64”类型的变量中。 我想将它们加载到20个不同的列表中(以便找到每个列表的最大值)。

提前谢谢!

PS:我很高兴听到有关python初学者的任何教科书建议。

2 个答案:

答案 0 :(得分:1)

您可以使用定界符拆分并加载到本机python列表中:

my_files = []

for i in range(1,21):
    with open("my_file_{0}.txt".format(i), 'r') as f:
        my_files.append(f.read().split(','))

现在您有了一个列表列表。您可以获取整体的最大值,也可以获取每个列表的最大值,如下所示:

# max of each
max_values = [max(map(float,my_list)) for my_list in my_files]

# max overall
max_overall = max(max_values)

答案 1 :(得分:0)

您的列表长度相等吗?如果是,则可以在一个numpy数组中完成所有操作:

a = np.zeros((100,20))

for i in range(1,21):
  a[i-1,:]=np.loadtxt("myfile_%s.txt" %i, delimiter=',', unpack=True)

现在,您可以对结果数组执行所有numpy功能,例如

b = np.sum(a,axis=0)