就地修改檔案中的行
是否可以依序逐行解析檔案並就地修改行迭代通過檔案?
答案:
是的,這可以透過使用備份檔案來模擬,如在 Python 標準庫中的 fileinput 模組中實現的那樣。
範例程式碼:
考慮以下腳本從提供的檔案或標準輸入中刪除不符合 some_condition函數指定的特定條件的行:
#!/usr/bin/env python # grep_some_condition.py import fileinput for line in fileinput.input(inplace=True, backup='.bak'): if some_condition(line): print(line, end="") # This outputs modified lines to the current file
使用範例:
要使用此腳本,執行以下指令:
$ python grep_some_condition.py first_file.txt second_file.txt
執行後,first_file.txt 和secondary_file.txt 都會被修改只包含符合some_condition 謂詞的行。
以上是在 Python 中迭代時可以就地修改檔案行嗎?的詳細內容。更多資訊請關注PHP中文網其他相關文章!