程序员文章、书籍推荐和程序员创业信息与资源分享平台

网站首页 > 技术文章 正文

Python之批量修改文件名,轻松解决图片序列导入问题

hfteth 2025-02-19 12:10:30 技术文章 12 ℃

在日常工作中,我们常常会遇到需要批量更改或删除文件名的情况,尤其是处理图片序列时。由于某些特殊情况,图片名字可能带有前缀,如“00000-new00000.png”,这会导致图片序列无法顺利导入PR、Nuke等软件。今天,我们就来教大家如何使用Python轻松解决这个问题。

【问题场景】

假设你有一系列图片,其命名格式如下: 00000-new00000.png 00001-new00001.png 00002-new00002.png ……

这些前缀“00000-”使得图片无法导入到一些常用软件中,我们需要将其删除。

【解决方案】

下面,我们将使用Python编写一个简单的脚本,帮助大家批量修改文件名。具体步骤如下:

  1. 导入os和re模块;
  2. 指定需要修改文件名的文件夹路径;
  3. 获取文件夹中的所有文件;
  4. 定义正则表达式模式,匹配需要删除的前缀;
  5. 遍历文件列表,检查文件类型,并使用正则表达式替换文件名;
  6. 重命名文件。

以下是具体的Python代码实现:

import os
import re

# 指定文件夹路径
folder_path = 'C:\\Users\\xxx\\Desktop\\ChangeFolder'

# 获取文件夹中的所有文件
file_list = os.listdir(folder_path)

# 定义正则表达式模式,匹配以数字开头的部分
pattern = re.compile(r'^\d\d\d\d\d-')

# 遍历文件列表
for file_name in file_list:
    # 检查文件是否是图片文件
    if file_name.lower().endswith(('.jpg', '.jpeg', '.png', '.gif', '.bmp')):
        # 使用正则表达式替换文件名
        new_file_name = re.sub(pattern, '', file_name)

        # 构建新的文件路径
        old_file_path = os.path.join(folder_path, file_name)
        new_file_path = os.path.join(folder_path, new_file_name)

        # 重命名文件
        os.rename(old_file_path, new_file_path)
        print(f'Renamed: {file_name} to {new_file_name}')

print("ok")

通过以上教程,相信大家已经掌握了如何使用Python批量修改文件名的方法。赶快试试吧,让工作效率翻倍!

Tags:

最近发表
标签列表