假设我有一个充满随机行的文本文件。如何使用Python保留特定行并从此文件中删除其他行? 该脚本应从目录和子目录中搜索所有.txt文件。
答案 0 :(得分:0)
首先,要搜索所有.txt
文件,可以使用以下方法:
import glob, os
os.chdir("/mydir")
for filePath in glob.glob("*.txt"):
...
来自here
第二,要浏览文件并找到所需的行,请使用:
myfile = open(filePath, "r")
然后查看文件中是否包含所需行。
if desiredLine in myfile:
...
然后,您可以关闭文件并以写入模式重新打开它。
myfile.close()
myfile = open(filePath, "w")
然后您要做的就是写您要保留的行。
myfile.write(desiredLine)
然后再次关闭文件
myfile.close()
来自here
最终脚本如下所示:
import glob, os
os.chdir("/mydir")
for filePath in glob.glob("*.txt"):
myfile = open(filePath, "r")
if desiredLine in myfile:
myfile.close()
myfile = open(filePath, "w")
myfile.write(desiredLine)
myfile.close()
注意,如果您要检查的文件中不存在您的行,则该行保持不变。
希望这对您有帮助