0
我需要搜索特定字符串或錯誤的調試文件,然後,一旦找到它,查找6行文件,然後打印上面列出的行6在裏面。Python - 文件 - 根據搜索結果更改行號
import linecache
file = "/file.txt"
fh = open("/file.txt", "r")
lookup = 'No Output'
with fh as myFile:
for num, line in enumerate(myFile, 1):
if lookup in line:
numUp = num + 6
new = linecache.getline(file, numUp)
print new
我嘗試添加的線沿線做的事情「NUM + = 6」每當我發現「一詞,我需要搜索」,但我的輸出是空的,或者我收到此錯誤:
File "testRead.py", line 12
print new
^
IndentationError: unexpected indent
如果還有另一種方法可以按照一行一行的方式執行「搜索,然後掃描n行,然後打印/返回」,那也是很好的瞭解,因爲我將使用的文件大小差別很大。
我提高了一些我通常看到的東西的示例文件:http://pastebin.com/mzvCfZid 任何時候我點擊字符串「(Err:No Output)」,我需要找到它的關聯ID,這是6行以上的數字錯誤。因此,「沒有輸出我需要搜索的內容
::編輯::
正如本文介紹的縮進正確和代碼運行檢查你的源文件:你可能有空格和製表符混合或一些這樣微妙的格式問題,但代碼生成沒有輸出,因爲行'num + 6'在'file.txt'中爲空白我懷疑你可能想要'num + 5'行。 – John1024 2014-09-26 04:36:37