python项目练习——5.自动化批量重命名图片文件

Python自动化脚本的特点:

  1. 简洁易读:Python语法清晰,代码简洁,易于学习和理解。

  2. 强大的库和框架支持:拥有丰富的库和框架,可以方便地处理文件、数据、网络请求等任务。

  3. 跨平台兼容性:可以在Windows、Linux、macOS等多种操作系统上运行,无需修改代码。

  4. 灵活性和可扩展性:支持面向对象编程,易于扩展和定制,同时也可以与其他语言进行集成。

  5. 庞大的社区支持:拥有庞大的开发者社区,提供大量的学习资源和解决方案。

  6. 自动化测试:适用于自动化测试场景,可以轻松编写和执行测试用例,提高测试效率。

  7. 自动化部署和运维:可用于自动化部署和运维任务,减少手动操作,提高运维效率。

  8. 广泛的应用场景:不仅适用于文件处理和数据分析,还可以应用于Web自动化、机器人编程、图像处理等多个领域。

1.项目目标:

编写一个Python脚本,用于批量重命名指定目录下的图片文件,使其按照一定的命名规则进行重命名。

2.实现步骤:

  1. 确定文件路径和命名规则
    • 指定要处理的图片文件所在的目录。
    • 确定重命名的规则,比如使用序列号前缀加原始文件名。
  2. 遍历目录并获取文件列表
    • 使用os模块遍历指定目录,获取所有图片文件的列表。
  3. 重命名文件
    • 对于每个文件,按照指定的命名规则生成新的文件名。
    • 使用os.rename()函数将原文件名改为新文件名。
  4. 记录处理结果
    • 打印出已处理的文件名和新文件名。
    • 可选:将处理结果写入日志文件。

示例代码:

import os

def batch_rename_images(directory, prefix):

遍历目录获取文件列表

for filename in os.listdir(directory):

检查文件是否为图片(这里以.jpg为例)

if filename.endswith(".jpg"):

生成新的文件名

new_filename = prefix + filename

构造原文件和新文件的完整路径

old_path = os.path.join(directory, filename)

new_path = os.path.join(directory, new_filename)

重命名文件

os.rename(old_path, new_path)

打印处理结果

print(f"Renamed '{filename}' to '{new_filename}'")

调用函数进行批量重命名

batch_rename_images("/path/to/images", "new_")

3.如何使用:

  1. 将上述代码保存为rename_images.py文件。
  2. 将要处理的图片文件放在指定的目录下,确保所有图片文件都符合您选择的扩展名(如.jpg)。
  3. 打开命令行终端,导航到脚本所在的目录。
  4. 运行脚本:python rename_images.py

4.注意事项:

  • 确保在执行重命名操作之前备份您的文件,以防万一发生错误导致文件丢失。
  • 如果重命名规则可能导致文件名冲突(即两个文件被重命名为相同的名字),您需要在代码中添加逻辑来处理这种情况。
  • 根据您的需求,您可能需要调整代码以处理不同类型的图片文件(如.png.gif等)。
相关推荐
-Springer-1 分钟前
STM32 学习 —— 个人学习笔记10-2(I2C 通信外设 & 硬件 I2C 读写 MPU6050)
笔记·stm32·学习
froginwe1114 分钟前
《WebPages 邮局》
开发语言
@insist12324 分钟前
网络工程师-广域网与接入网技术(一):核心协议与流量控制
开发语言·网络·网络工程师·软考·软件水平考试
爱吃生蚝的于勒26 分钟前
【Linux】重中之重!TCP协议
linux·运维·服务器·网络·学习·tcp/ip
ZC跨境爬虫32 分钟前
免费验证码识别:用ddddocr实现Playwright自动化登录
爬虫·python·自动化
旖-旎40 分钟前
分治(计算右侧小于当前元素的个数)(7)
c++·学习·算法·leetcode·排序算法·归并排序
ˇasushiro42 分钟前
终端工具配置
开发语言·ios·swift
benpaodeDD42 分钟前
JDBC内容学习
学习
数据知道43 分钟前
claw-code 源码详细分析:子系统目录地图——几十个顶层包如何用五条轴(会话 / 工具 / 扩展 / 入口 / 桥接)读懂?
服务器·python·ai·claude code
cxr82843 分钟前
GPU 加速声场求解器 - 深度扩展
人工智能·python