如何,在Python,我可以删除一个文件,如果它包含一个字符串。 我希望它通过目录中的所有文件,打开它们,检查它们是否包含字符串,如果是,则删除该文件并移至下一个文件。
-3
A
回答
4
有几件这个问题。首先,您需要列出这些文件。根据您的需求:glob.glob
,os.listdir
或os.walk
可能是适当的。您还需要知道如何打开文件并搜索字符串。最简单的(幼稚)的方式做,这是打开文件,读取所有内容,并检查字符串存在:
def check_file_for_string(filename,string):
with open(filename) as fin:
return string in fin.read()
这种简单的方式是不理想的,因为它会读取的全部内容你将文件存入内存,如果文件真的很大,这可能是一个问题。
最后,如果check_file_for_string
返回True
,则可以使用os.remove
或os.unlink
删除该文件。
+0
正是我需要知道的。非常感谢。 – Jeremy
相关问题
- 1. 删除一个字符串,如果它包含一个条目
- 2. 删除DOM元素,如果它包含一个字符串
- 3. 删除一行,如果它包含CSV文件中的字符串
- 4. 从C中的每个字符串中删除一个子字符串(如果它包含它)
- 5. 删除包含字符串
- 6. 删除文件夹,如果它包含少于两个文件
- 7. 删除阵列键时,它包含一个字符串在javascript
- 8. 删除字符串的第一个字符如果它等于
- 9. 如果字符串包含其他,如果它不包含 - Javascript
- 10. 删除HTML标记,如果它包含一些文字
- 11. PHP - 如果一个字包含特定字符串替换它
- 12. 检查一个字符串,如果它包含字母
- 13. 如何分割一个字符串,如果它包含句点(。)?
- 14. Unix脚本删除多个文件,如果它包含单行
- 15. 匹配一个字符串,但不包含它包含另一个字符串
- 16. 删除多个包含子字符串名称的文件
- 17. c#检查标签,如果它包含一个字符串
- 18. 如何删除不包含字符串的文件? - Windows
- 19. 如何从文件中删除一行,如果它包含使用PHP的特定字符串?
- 20. 删除包含一个字
- 21. 删除线包含从另一个文件采取了一定的字符串
- 22. 如果字符串包含'
- 23. 修剪一个字符串的结尾,如果它包含某个字符?
- 24. PHP从文本文件中删除包含字符串的行
- 25. 排除正则表达式匹配,如果它包含一个字符串
- 26. 如果文件名包含字符串,则删除IMG上的类
- 27. 排除数组,如果它包含字符串
- 28. 删除最后一个字符串,如果它的“‘
- 29. 如果单元格包含字符串,则删除整行X
- 30. 删除链接,如果链接名称包含字符串
这些文件有多大?他们是ASCII还是二进制? – mgilson
[你有什么试过?](http://mattgemmell.com/2008/12/08/what-have-you-tried/) –
http://www.whathaveyoutried.com/ - ? –