我有一个大文本文件,我需要从中提取多个值。文本文件有很多我不需要的信息。有没有办法我可以搜索一行中的特定术语并返回该行中的第一个值。请在下面的例子
text
text text
text
text text text
text text
aaaaa text sum
text
text
text
我需要搜索sum并返回aaaaa
我有办法做到这一点吗?
答案 0 :(得分:5)
with open(file_path) as infile:
for line in infile:
if 'sum' in line:
print line.split()[0] # Assuming space separated
答案 1 :(得分:2)
如果文字文件确实很大,您可以使用此处的mmap — Memory-mapped file support Python Random Access File。
答案 2 :(得分:0)
你在找这样的东西吗?
for Line in file("Text.txt", "r"):
if Line.find("sum") >= 0:
print Line.split()[0]
Line.split()
会将这一行拆分为单词,然后您可以选择一个从0开始的索引,即选择第二个单词使用Line.split()[1]