作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一些 .txt 日志文件,我正在寻找一种方法来循环所有这些文件并在其中查找特定的字符串。找到后,所有结果都会打印在新的 .txt 文件中。到目前为止,我已经成功创建了这个:
import os
stringToMatch = 'dataToLookFor'
matchedLine = ''
with open('Logs/mylogs.txt', 'r') as file:
for line in file:
if stringToMatch in line:
matchedLine = line
continue
with open('Logs/results.txt', 'w') as file:
file.write(matchedLine)
这样我就可以一一找到结果,但只能在文件 mylogs.txt 中找到。很感谢任何形式的帮助。
最佳答案
您应该看看glob
package 。使用此软件包,您可以找到所有 *.txt
文件并执行必要的操作:
import glob
files = glob.glob('Logs/*.txt')
将为您提供 Logs
文件夹中具有 txt
文件扩展名的文件列表。
有了这个,您就可以浏览所有文件并将匹配的行存储到某个输出文件中:
string_to_match = 'dataToLookFor'
with open('Logs/results.txt', 'w') as outfile:
for f in files:
with open(f, 'r') as infile:
for line in infile:
if string_to_match in line:
outfile.write(f'{f}: {line}')
关于python - 如何循环遍历 .txt 文件并搜索特定字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61060337/
我是一名优秀的程序员,十分优秀!