You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python循环遍历多文件夹读取.txt文件的实现方法求助

Hey there! 作为数据分析新手,要搞定批量读取多个文件夹里的txt文件,其实用Python自带的库就完全能搞定,不用额外安装包~下面给你两种常用实现方式,都是按顺序逐个处理文件夹和文件的逻辑,你可以根据喜好选:

方法一:使用os模块(传统文件路径操作)

这个是Python内置的老牌文件操作模块,os.walk()方法刚好能帮你递归遍历所有文件夹和文件,完美匹配你的需求。

import os

# 替换成你的工作目录路径,当前目录就用'.',绝对路径比如'C:/data_analysis/work_folder'也可以
work_directory = "."

# 遍历工作目录下的所有层级文件夹和文件
for root, dirs, files in os.walk(work_directory):
    # 对文件夹列表排序,保证按你预期的顺序处理(默认是字母/数字排序)
    dirs.sort()
    # 对当前文件夹内的文件也排序
    files.sort()
    
    for file_name in files:
        # 只筛选.txt格式的文件
        if file_name.endswith(".txt"):
            # 拼接完整的文件路径,避免路径错误
            full_file_path = os.path.join(root, file_name)
            print(f"正在读取:{full_file_path}")
            
            # 读取文件内容(用with语句会自动关闭文件,更安全)
            with open(full_file_path, "r", encoding="utf-8") as file:
                content = file.read()
                # 这里可以加你的数据分析逻辑,比如解析内容、存入DataFrame等
                # 示例:打印文件前100个字符
                # print(content[:100])

关键说明:

  • os.walk()会返回三个值:root是当前遍历到的文件夹路径,dirs是该文件夹下的子文件夹列表,files是该文件夹下的文件列表
  • dirs.sort()和files.sort()是为了确保处理顺序符合你的预期,不然默认顺序可能随机
  • 如果你的txt文件是GBK等非UTF-8编码,把encoding="utf-8"改成对应编码即可
方法二:使用pathlib模块(现代面向对象方式)

这是Python3.4+推出的新模块,用面向对象的方式处理路径,代码更简洁直观,新手也容易理解。

from pathlib import Path

# 定义工作目录路径对象
work_directory = Path(".")

# 先遍历并排序所有子文件夹,保证按顺序处理
for folder in sorted(work_directory.iterdir()):
    # 只处理文件夹,跳过单个文件
    if folder.is_dir():
        print(f"正在处理文件夹:{folder.name}")
        # 遍历当前文件夹下的所有txt文件并排序
        for txt_file in sorted(folder.glob("*.txt")):
            print(f"正在读取:{txt_file}")
            with open(txt_file, "r", encoding="utf-8") as file:
                content = file.read()
                # 这里添加你的数据分析逻辑

关键说明:

  • Path(".")把字符串路径转换成路径对象,后续操作更灵活
  • sorted(work_directory.iterdir())先获取所有子文件夹并排序,完全符合你“逐个打开文件夹”的需求
  • folder.glob("*.txt")直接筛选当前文件夹下的所有txt文件,不用手动拼接路径

额外提醒:

如果你的txt文件特别大,别用read()一次性读取全部内容,改用for line in file:逐行读取,避免内存占用过高哦~

内容的提问来源于stack exchange,提问作者Tiny_Y

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.20 08:02:48