在Python中将文本文件拆分为列和行

use*_*474 3 python

我有一个新手问题。我需要将文本文件分为列和行的帮助。假设我有一个像这样的文件:

1 2 3 4

2 3 4 5
Run Code Online (Sandbox Code Playgroud)

我想把它放在一个二维列表中 values = [[]]

我可以得到它给我行,并且此代码可以正常工作:

values = map(int, line.split(','))
Run Code Online (Sandbox Code Playgroud)

我只是不知道该如何说同样的话,但对于行和文档则没有任何意义

干杯

Ale*_*ler 5

f = open(filename,'rt')
a = [[int(token) for token in line.split()] for line in f.readlines()[::2]]
Run Code Online (Sandbox Code Playgroud)

在上面的示例文件中,每个数据行之间都有一个空行-我已经考虑了这一点,但是::2如果您不打算在数据中包含此多余的行,则可以删除下标。

编辑:将转换添加到int-您也可以使用map,但是混合列表map解析度对我来说似乎很丑。