在Python中将多个文本文件读取到2D numpy数组

时间:2019-04-22 13:10:23

标签: python-3.x

我有10个txt文件。每个都有字符串。

A.txt: "This is a cat"
B.txt: "This is a dog"
.
.
J.txt: "This is an ant"

我想读取这些多个文件并将其放入2D数组中。

[['This', 'is', 'a', 'cat'],['This', 'is', 'a', 'dog']....['This', 'is', 'an', 'ant']]

from glob import glob
import numpy as np
for filename in glob('*.txt'):
    with open(filename) as f:
        data = np.genfromtxt(filename, dtype=str)

它没有按照我想要的方式工作。任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:1)

您只是为每个文本文件生成了不同的numpy数组,而不保存其中的任何一个。这样将每个文件添加到列表中,然后再转换为numpy怎么样?

data = []

for filename in glob('*.txt'):
    with open(filename) as f:
        data.append(f.read().split())

data = np.array(data)