从文本文件中提取列 - Python

时间:2013-08-19 21:44:12

标签: python

我是初学者。

每次在Python脚本中找到文本文件中的某个单词(类似于Bash中的awk '{print $12}')时,我需要从一个巨大的平面文本文件中提取第12列的内容。

到目前为止,我有(例如,不是真正的代码):

word = a_word
for a_word in data:
   column12 = data.split()
   print(column12[11])

我认为我应该从0开始计数而不是1,尽管我可能不正确。

此外,这类代码的for循环是否正确?

谢谢!

2 个答案:

答案 0 :(得分:7)

循环打开文件对象:

with open('somefile') as infile:
    for line in infile:
        print(line.split()[11])

所以,是的,使用for循环并使用基于0的索引。

答案 1 :(得分:1)

如果列是带有分隔符(即空格或逗号)分隔值的文本文件,您可能需要查看python的csv模块:http://docs.python.org/2/library/csv.html