查看: 178|回复: 0

Python批量重命名文件脚本实战:从环境搭建到os模块应用

[复制链接]
发表于 1 小时前 | 显示全部楼层 |阅读模式
很多Python新手学完基础语法后,最大的困惑是不知道如何把知识点落到实际代码里。本文围绕一个真实需求——批量重命名文件夹里的文件,完整梳理Python环境搭建、核心语法要点,并给出可直接运行的脚本。整个流程不涉及复杂底层原理,适合刚入门的朋友照着操作并理解关键代码。

一、环境搭建的两个关键点

Python安装本身不复杂,但Windows用户要特别注意:安装时务必勾选“Add Python to PATH”。这一步如果漏掉,安装完成后在cmd里输入python会提示命令不存在。勾选之后,打开命令提示符执行:
  1. python --version
复制代码

如果能正常输出版本号,说明环境可用。如果之前没有勾选PATH,可以重新运行安装程序勾选修复,也可以手动把Python安装目录和Scripts目录加入系统环境变量。

版本方面,不建议新手同时安装多个Python版本。优先选择3.10到3.12之间的稳定版本,太新的版本可能遇到部分第三方库尚未兼容的问题。

IDE方面,PyCharm社区版是免费且对新手友好的选择。安装后新建项目,选择已装好的Python解释器,然后新建.py文件即可写代码。如果电脑配置一般,也可以用VS Code加Python插件,更轻量。

二、编写批量重命名脚本前必须掌握的语法

Python属于弱类型语言,变量直接赋值即可,不需要声明类型。常见的数据类型包括字符串、整数、浮点数、布尔值、列表等。列表用方括号定义,有序且可修改。
  1. name = "Python学习"
  2. age = 2
  3. score = 95.5
  4. my_list = ["java","python","go"]
  5. print(name, age, score)
  6. print(my_list[1])
复制代码

条件判断使用if-elif-else,循环有for和while两种。Python用缩进划分代码块,同一个代码块内的缩进空格数必须一致,这是新手最容易踩的坑。
  1. score = 85
  2. if score >= 90:
  3.     print("优秀")
  4. elif score >= 60:
  5.     print("及格")
  6. else:
  7.     print("不及格")
  8. lang_list = ["Python","Java","C++"]
  9. for lang in lang_list:
  10.     print(f"编程语言:{lang}")
复制代码

函数用def关键字定义,可以把重复逻辑封装起来复用:
  1. def calc_sum(a, b):
  2.     return a + b
  3. res = calc_sum(10, 20)
  4. print(res)
复制代码

三、文件批量重命名脚本实现

场景很常见:一个文件夹里有很多图片或文档,名字乱七八糟,想统一改成有规律的前缀加序号。手动改效率太低,用Python的os模块几十行代码就能解决。

运行脚本前建议先备份原始文件,防止误操作。完整代码如下:
  1. import os
  2. def batch_rename(folder_path, prefix="file"):
  3.     """
  4.     folder_path:目标文件夹路径
  5.     prefix:文件名称前缀
  6.     """
  7.     if not os.path.exists(folder_path):
  8.         print("文件夹路径不存在!")
  9.         return
  10.     count = 1
  11.     # 遍历文件夹内所有内容
  12.     for filename in os.listdir(folder_path):
  13.         old_path = os.path.join(folder_path, filename)
  14.         # 跳过子文件夹,只处理文件
  15.         if os.path.isfile(old_path):
  16.             # 分离文件名和后缀,保证重命名不丢格式
  17.             suffix = os.path.splitext(filename)[1]
  18.             new_name = f"{prefix}_{count}{suffix}"
  19.             new_path = os.path.join(folder_path, new_name)
  20.             os.rename(old_path, new_path)
  21.             count += 1
  22.     print(f"处理完成,一共修改{count - 1}个文件")
  23. if __name__ == "__main__":
  24.     # 修改这里为你自己的文件夹路径
  25.     target_folder = r"D:\test_files"
  26.     batch_rename(target_folder, prefix="picture")
复制代码

这段脚本的核心逻辑并不复杂,关键在于os模块几个内置函数的配合:

- os.listdir(folder_path):读取指定文件夹下的全部条目,包括文件和子目录。
- os.path.join(folder_path, filename):拼接完整的文件路径,保证跨平台路径分隔符正确。
- os.path.isfile(old_path):判断当前条目是否为文件,子文件夹会被跳过,避免误改目录。
- os.path.splitext(filename):把文件名和后缀拆开,比如report.pdf拆成report和.pdf,新文件名直接复用原后缀就不会破坏格式。
- os.rename(old_path, new_path):执行实际的重命名操作。

运行后,目标文件夹里的文件会变成picture_1.jpg、picture_2.png这种统一格式。count从1开始,每处理一个文件自增1,最终输出总共修改的文件数量。

这个脚本还可以继续扩展,比如只处理指定后缀的文件,或者把日期时间戳加入文件名。对新手来说,基于这个案例去改动,比单纯看语法书更容易理解os模块的用途。

四、学习过程中的避坑建议

不要只看视频或教程然后眼高手低,看懂和会写之间需要大量敲代码练习。报错不要怕,控制台红色的提示会直接指出错误行号和原因,学会阅读报错是程序员的基本功。遇到常见需求时,先查Python标准库,很多功能都不用自己从零实现。学习路径也要循序渐进,先完成小脚本,再尝试更大的项目。

本文从环境搭建讲到基础语法,最后落成一个可以实际使用的批量重命名脚本,整个过程就是Python入门的一个缩影:安装环境、掌握变量/分支/循环/函数、调用标准库解决真实问题。学完这个案例,可以继续往数据分析、自动化脚本或Web后端方向深入,但前提是持续写代码、积累项目经验,而不是停留在看教程的阶段。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

指导单位

江苏省公安厅

江苏省通信管理局

浙江省台州刑侦支队

DEFCON GROUP 86025

Hacking Group 021A

旗下站点

态势感知中心

应急响应中心

红盟安全

联系我们

官方QQ群:112851260

官方邮箱:security#ihonker.org(#改成@)

官方核心成员

关注微信公众号

Archiver|手机版|小黑屋| ( 沪ICP备2021026908号 )

GMT+8, 2026-9-2 13:05 , Processed in 0.020609 second(s), 17 queries , Gzip On, Redis On.

Powered by ihonker.com

Copyright © 2015-现在.

  • 返回顶部