Python - 需要遍历目录以查找 TXT 文件

标签 python

我是一个十足的Python新手

我需要遍历目录查找 .txt 文件,然后分别读取和处理它们。我想对此进行设置,以便脚本所在的任何目录都被视为此操作的根目录。例如,如果脚本在/bsepath/workDir 中,那么它将遍历 workDir 及其子文件中的所有文件。

我目前拥有的是:

#!/usr/bin/env python

import os

scrptPth = os.path.realpath(__file__)

for file in os.listdir(scrptPth)
    with open(file) as f:
        head,sub,auth = [f.readline().strip() for i in range(3)]
        data=f.read()
        #data.encode('utf-8')

pth = os.getcwd()

print head,sub,auth,data,pth

这段代码给我一个无效的语法错误,我怀疑这是因为 os.listdir 不喜欢标准字符串格式的文件路径。我也不认为我正在做正确的循环 Action 。如何在循环操作中引用特定文件?是否打包成变量?

需要任何帮助

最佳答案

import os, fnmatch

def findFiles (path, filter):
    for root, dirs, files in os.walk(path):
        for file in fnmatch.filter(files, filter):
            yield os.path.join(root, file)

像这样使用它,它会找到给定路径内某处的所有文本文件(递归):

for textFile in findFiles(r'C:\Users\poke\Documents', '*.txt'):
    print(textFile)

关于Python - 需要遍历目录以查找 TXT 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13299731/

相关文章:

python - 在 Python 2.7 中如何将文本 (.txt) 文件作为 .py 文件读取?

python - 为什么numpy对很多ndarray方法都有对应的函数呢?

Python:与 None 的字符串连接返回 None?

Python/PyCharm 缺少参数 'self'?

python - 使用 MongoEngine 指定集合名称

python - YoutubeDL - 下载完成后如何获取状态对象

python - 如何从python中的Postsql解释中提取时间成本

python - 如何使用 lxml 针对多个 xsd 模式进行验证?

python - 将固定宽度的文本文件更改为定界

python - 在 python 中直接写入 .csv 时,如何防止用户输入相同的输入两次