2014-03-28 88 views
1

我想逐行讀取文本文件。我發現如何通過搜索逐行閱讀,而不是如何在文本文件中調用特定的行。基本上,我想要做的特別行的東西(如第一線,第二線,第三線等):如何逐行閱讀文本文件併爲特定行做些事情?

if particular_line is something: 
.... 

而且,我怎麼可以做這樣的事情:

if return_from_another_function in file: 
.... 

基本上,我想要一個例子,說明如果可能的話我該怎麼做。

+0

我的解決方案是否適合您? –

回答

1
f = open('filename', 'r') 
lines = f.readlines() 

現在你會得到一個列表類型的對象lines,你可以用它來訪問特定的行或迭代,並搜索特定行。

0

標準linecache模塊使這一個單元:

import linecache 
theline = linecache.getline(thefilepath, desired_line_number) 

關於你的第二闕(from Ans):

如果文件不是太大,你可以讀入一個字符串,只是使用(更容易,往往比閱讀並檢查每行快線):

if 'blabla' in open('example.txt').read(): 
    print "true" 
0

也許這將幫助:

myfile = open(filename, "rb", 0) 
for line in myfile 
    if(line is "your string to be compared") 
     print "do something here"