Python基础实战——批量处理文件(适合入门)
·
一、学习目标
掌握 Python 文件操作(读取、写入、遍历),学会批量处理指定目录下的文件,比如批量修改文件名、提取文件内容,适合刚入门 Python 的程序员巩固基础语法。
二、核心知识点
- os 模块:遍历目录、修改文件名、判断文件类型
- 文件操作:open () 函数的读写模式
- 字符串处理:replace ()、split () 方法的实际应用
三、实战代码(可直接运行)
需求:批量修改指定目录下所有.txt 文件的文件名(添加前缀 “学习笔记_”),并提取所有文件的内容,汇总到一个新文件中。
python
运行
import os
# 1. 定义目标目录(可修改为自己的文件夹路径)
target_dir = "D:/Python学习笔记"
# 2. 校验目录是否存在,不存在则创建
if not os.path.exists(target_dir):
os.makedirs(target_dir)
print(f"目录 {target_dir} 不存在,已自动创建")
# 3. 批量修改.txt文件文件名
for filename in os.listdir(target_dir):
# 判断是否是.txt文件
if filename.endswith(".txt"):
# 拼接旧文件路径和新文件路径
old_path = os.path.join(target_dir, filename)
new_filename = "学习笔记_" + filename
new_path = os.path.join(target_dir, new_filename)
# 修改文件名
os.rename(old_path, new_path)
print(f"已修改:{filename} → {new_filename}")
# 4. 提取所有.txt文件内容,汇总到新文件
summary_path = os.path.join(target_dir, "所有笔记汇总.txt")
# 以追加模式打开汇总文件,避免覆盖
with open(summary_path, "a", encoding="utf-8") as summary_file:
for filename in os.listdir(target_dir):
if filename.endswith(".txt") and filename != "所有笔记汇总.txt":
file_path = os.path.join(target_dir, filename)
# 读取单个文件内容
with open(file_path, "r", encoding="utf-8") as f:
content = f.read()
# 写入汇总文件,添加文件标识
summary_file.write(f"【{filename}】\n{content}\n\n")
print(f"已提取:{filename} 的内容")
print("批量处理完成!汇总文件路径:", summary_path)
四、代码说明与运行注意事项
- 修改 target_dir 为自己电脑上的文件夹路径,确保该文件夹下有.txt 文件,否则会提示 “已创建目录”,但无文件修改。
- encoding="utf-8" 用于避免中文乱码,若运行时出现编码错误,可尝试将编码改为 gbk。
- 运行后会在目标目录下生成 “所有笔记汇总.txt”,包含所有.txt 文件的内容,且原.txt 文件均添加了 “学习笔记_” 前缀。
五、拓展练习
尝试修改代码,实现 “批量删除指定目录下小于 100KB 的.txt 文件”,巩固 os 模块的使用。
更多推荐


所有评论(0)