我有一個大型的文本文件,我需要從中拉出幾個值。該文本文件有很多我不需要的信息。有沒有一種方法可以搜索一行中的特定術語並返回該行中的第一個值。請下面的例子Python文本文件搜索
text
text text
text
text text text
text text
aaaaa text sum
text
text
text
我需要尋找和與回報的aaaaa
值是有辦法,我可以做到這一點?
我有一個大型的文本文件,我需要從中拉出幾個值。該文本文件有很多我不需要的信息。有沒有一種方法可以搜索一行中的特定術語並返回該行中的第一個值。請下面的例子Python文本文件搜索
text
text text
text
text text text
text text
aaaaa text sum
text
text
text
我需要尋找和與回報的aaaaa
值是有辦法,我可以做到這一點?
你在找這樣的事嗎?
for Line in file("Text.txt", "r"):
if Line.find("sum") >= 0:
print Line.split()[0]
Line.split()
將向上行拆分成詞,然後你可以用它從0開始的索引,也就是選擇,選擇第二個字使用Line.split()[1]
with open(file_path) as infile:
for line in infile:
if 'sum' in line:
print line.split()[0] # Assuming space separated
如果文本文件確實是大,你可以使用mmap — Memory-mapped file support在這裏找到:Python Random Access File。
'if'sum'in Line:...'也可以。另外,根據文檔,'open'比'file'更可取。 – bereal 2012-03-08 08:54:35
非常感謝。如果我想打印aaaa旁邊的嵌套值,我將如何打印0和1的值。print Line.split()[0,1] ???我得到這個 – 2012-03-08 09:33:37
Line.split()[1]應該這樣做的錯誤。 – 2012-03-08 10:59:25