AI学习-数据图片批量改名-win环境下-使用python脚本
AI学习-数据图片批量改名-win环境下-使用python脚本
- 1-前言
- 2-说明
- 1-图片改名是做什么
- 2-明确目标
- 3-工具介绍
- 4-操作流程
- 1-准备文件夹
- 2-准备图片
- 3-新建文件
- 4-打开终端
- 5-总结
1-前言
我们操作图片的时候,经常需要,比如打标签,需要批量改名,因为我们做训练时,图片需要有比较合适的名字,为此我们需要改名,肯定不能一个一个手改的
2-说明
1-图片改名是做什么
在我们需要对批量图片修改名字的时候,其中一种简单方式,使用python脚本来解决,本次就是介绍着
2-明确目标
我们使用python脚本在文件里,对图片进行批量修改
3-工具介绍
Python 脚本(Python Script)就是一段写好的 Python 代码文件,通常以 .py 结尾,比如 hello.py、train_model.py。
4-操作流程
这次介绍两种手动打标工具。
1-准备文件夹
新建文件夹如下
2-准备图片
将需要批量改名的图片,放在文件里,当然我这里已经改完的了。
3-新建文件
然后命名,扩展为.py
import os
import sys# === 配置 ===
prefix = "Crack" # 文件名前缀
exts = {".png", ".jpg", ".jpeg"} # 识别的图片格式# === 获取命令行参数 ===
if len(sys.argv) < 2:print("用法: python rename_images.py <起始编号>")print("例如: python rename_images.py 23")sys.exit(0)start_num = int(sys.argv[1])
folder = os.getcwd() # 当前目录# === 获取所有目标文件 ===
files = [f for f in os.listdir(folder)if os.path.splitext(f)[1].lower() in exts]# 自然排序(img2在img10前)
files.sort(key=lambda x: [int(t) if t.isdigit() else t for t in __import__('re').split(r'(\d+)', x)])# 计算编号位数
pad = max(2, len(str(start_num + len(files) - 1)))# === 重命名 ===
for i, old_name in enumerate(files, start=start_num):old_path = os.path.join(folder, old_name)ext = os.path.splitext(old_name)[1].lower()new_name = f"{prefix}-{i:0{pad}d}{ext}"new_path = os.path.join(folder, new_name)os.rename(old_path, new_path)print(f"{old_name} → {new_name}")print(f"\n🎉 已完成重命名,共 {len(files)} 个文件,从 {prefix}-{start_num:0{pad}d} 开始。")
4-打开终端
运行终端(win+R 然后输入cmd),命令如下。
python turn_image_num.py 23
其中数字是开始的数字
5-总结
虽然改名可以在打完标后,在进行改,但是打标后,需要和标签文件也要改稍微复杂一些。