可能重复:
在 txt 文件 Python 中搜索字符串
在 python 中,如果文件包含字符串,我如何删除它。我希望它遍历目录中的所有文件,打开它们,检查它们是否包含字符串,如果是,则删除文件并移至下一个文件。
可能重复:
在 txt 文件 Python 中搜索字符串
在 python 中,如果文件包含字符串,我如何删除它。我希望它遍历目录中的所有文件,打开它们,检查它们是否包含字符串,如果是,则删除文件并移至下一个文件。
这个问题有几个部分。首先,您需要一个文件列表。根据您的需要: glob.glob
或os.listdir
可能os.walk
是合适的。您还需要知道如何打开文件并搜索字符串。最简单(简单)的方法是打开文件,读取所有内容并检查字符串是否存在:
def check_file_for_string(filename,string):
with open(filename) as fin:
return string in fin.read()
这种天真的方式并不理想,因为它会将文件的全部内容读入内存,如果文件真的很大,这可能是一个问题。
最后,如果返回,您可以使用os.remove
或os.unlink
删除文件。check_file_for_string
True