首页 > 解决方案 > 在 Python 中从数据文件中选择列

问题描述

我有一个看起来像这样的数据文件

0,000   1024,000    1017,000
0,897   1024,000    1017,000
1,896   1024,000    1017,000
2,897   1024,000    1017,000
3,896   1024,000    1017,000
4,897   1024,000    1017,000

我想选择第二列和第三列并将它们放在两个单独的列表中,但我不知道该怎么做。这是我到目前为止所得到的:

file = open('data_file',"r")
file_content = file.read()
file.close()

我做了一些尝试选择一个完整的列,但还没有让它工作。我应该怎么做?

标签: python

解决方案


您可以阅读其中的行,然后过滤到最后两列。从那里,您可以使用zip将列转换为列表。

with open('data_file') as f:
    lines = [line.split() for line in f.readlines()]

columns = [[col[1], col[2]] for col in lines]

print(list(list(col) for col in zip(*columns)))

zip如果您只是阅读它的描述,这很棘手。像这样摆弄它以了解它的工作原理要好得多:

list(zip((2,4,6),(1,3,5)))

推荐阅读