如何根据文本文件中的特定单词过滤特定值并将其存储在列表中?

时间:2011-03-17 16:05:15

标签: python filtering

  

可能重复:
  How to Filter specific values against specific words from text file and store it in list ?

我有一个文本文件abc.txt,它是这样的:

we 2 rt 3 re 3 tr vh kn mo
we 3 rt 5 re 5 tr yh kn me
we 4 rt 6 re 33 tr ph kn m3
we 5 rt 9 re 34 tr oh kn me
we 6 rt 8 re 32 tr kh kn md

我想要反对tr的值,并在过滤后得到这个结果:

[vh,yh,ph,oh,kh]

任何人都可以告诉你该怎么做吗?应该为它写什么代码?

1 个答案:

答案 0 :(得分:4)

words = []
f = open('abc.txt')
for line in f.readlines():
    if 'tr' in line:
        linewords = line.split()
        ind = linewords.index('tr')
        words.append(linewords[ind + 1])

此外,如果您确定数据格式正确,则可以使用awk:

awk '/tr/ {print $8}' abc.txt