我的问题下面您可以看到我评论的解决方案。我读了一个包含所有文本文件的文件夹。之后,我想使用循环来读取所有文件及其内容作为变量。我用它来做这个。由于不幸的是我有一个基于德语的文本文件,我必须重写它才能继续使用它。然后我将创建的列表转换为数组。在循环结束时,我只得到最后一个文本文件作为变量。但我想为每个文本文件都有一个变量或数组。data[0]是文本文件 0 中的值。data[1]是文本文件 1 中的值。data[2]是文本文件 2 中的值。等等。我知道循环末尾缺少一些东西,但我只是不知道该怎么做。import numpy as npimport globread_files = glob.glob('*.txt')for i in range(0, len(read_files): temp = [] data = [] txt_file = open(read_files[i], 'r+').readlines()[1:] for line in txt_file: line = line.replace(',', '.') line = line.replace('\t', ' ') line = line.replace('****', '0') temp.append(line) temp = np.array(temp) data = np.loadtxt(temp) print(data)我的方法是:使用两个循环写入矩阵并重写变量数据中的所有值。定义data为运行变量。写入一个新文件并再次读入。可行,但很麻烦并且消耗太多内存。
1 回答
胡说叔叔
TA贡献1804条经验 获得超8个赞
看起来您还需要一份清单。这将是列表的列表。类似于以下内容:
import numpy as np
import glob
read_files = glob.glob('*.txt')
all_data = []
for i in range(0, len(read_files):
temp = []
txt_file = open(read_files[i], 'r+').readlines()[1:]
for line in txt_file:
line = line.replace(',', '.')
line = line.replace('\t', ' ')
line = line.replace('****', '0')
temp.append(line)
all_data.append(temp)
print(all_data)
添加回答
举报
0/150
提交
取消