python - 在python中搜索具有搜索词的文件
问题描述
尝试使用该方法在文件夹中的一堆文本文档中查找搜索词:
dirname = '/Users/user/Documents/dat/'
search_terms = ['kek']
for f in os.listdir(dirname):
text = open(os.path.join(dirname,f)).readlines()
if any(term in text for term in search_terms):
print (f)
出于某种原因,不知道为什么,它给了我目录中第一个文件的名称,不管它是否包含这个搜索词。为了正确完成这项任务,应该做些什么不同的事情?
谢谢!
解决方案
如果我理解正确,你需要。
dirname = '/Users/user/Documents/dat/'
search_terms = ['kek']
for f in os.listdir(dirname):
with open(os.path.join(dirname,f), "r") as infile:
text = infile.read()
if any(term in text for term in search_terms):
print (f)
推荐阅读
- javascript - 为网站中的静音/取消静音设置 cookie
- python - 在同一个 django forms.ModelForm 类中访问 froms.filed 的值
- node.js - 使用 nodejs 请求模块以 POST
- angular - 结合来自两个 Angular 项目(和 dotnet)的代码覆盖率
- css - 如何确保 osx 和 windows 之间的滚动条样式一致性?
- angular - Angular 全球服务
- reactjs - 在按钮单击时增加变量的值
- flutter - Riverpod 结构,用于使用自己的提供程序的项目列表
- cloc - 如何在 CLOC 中添加文件扩展名(代码行数)
- json - Power BI 中 REST API 的身份验证