簡體   English   中英

如何使用 python 從文件中刪除多行

[英]How to remove multiple lines from a file with python

我正在嘗試使用以下代碼從文件中刪除行:

with open('example_file', 'r') as file:
    file_content = file.readlines()
file.close()
            
with open('example_file', 'w') as new_file:
    for line in file_content:
        if line.strip("\n") != 'example_line_1':
            new_file.write(line)
new_file.close()

這適用於一條線,但我怎樣才能刪除其他(多條)線呢?

您可以使用and來完成。

...

with open('example_file', 'w') as new_file:
    for line in file_content:
        currentLine = line.strip("\n")
        if currentLine != 'example_line_1' and currentLine != 'example_line_2':
            new_file.write(line)
new_file.close()

但這變得太大了,太快了。 您還可以使用一個包含您希望從一行中刪除的單詞的數組,然后檢查當前行是否包含這些單詞中的任何一個:

...
words = ["example_line_1", "example_line_2", "foobar"]
with open('example_file', 'w') as new_file:
    for line in file_content:
        currentLine = line.strip("\n")
        if currentLine not in words:
            new_file.write(line)
new_file.close()

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM