You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用Python基于文本文件批量重命名图片并保留.png后缀?

解决批量重命名图片丢失.png后缀的问题

问题场景

需要将C:/images文件夹中的图片按namelist.txt内的内容批量重命名,且保留.png后缀。现有脚本运行正常,但重命名后丢失了后缀,不符合预期效果。

修改后的Python脚本

import os 

def chngname():
    os.chdir('C:/images')
    with open('C:/namelist.txt','r') as jabber:
        content = jabber.read().splitlines()
        # 仅筛选.png文件,避免误处理其他类型文件
        director = [x for x in os.listdir() if x.endswith('.png')]
        director.sort()
        return content, director

newname = chngname()
os.chdir('C:/images')
for id, file in enumerate(newname[1]):
    # 拼接新名称与.png后缀
    new_file_name = f"{newname[0][id]}.png"
    os.rename(file, new_file_name)

关键改动说明

  1. 精准筛选目标文件:获取文件夹文件列表时,添加if x.endswith('.png')判断,确保只处理图片文件,避免误操作其他类型文件。
  2. 强制保留后缀:重命名时将namelist.txt中的名称与.png后缀拼接,生成完整的目标文件名,直接解决后缀丢失问题。

通用优化方案(适配多后缀场景)

如果后续需要处理不同后缀的图片,可提取原文件的后缀再拼接,兼容性更强:

for id, file in enumerate(newname[1]):
    # 提取原文件的后缀(如.png、.jpg等)
    _, ext = os.path.splitext(file)
    new_file_name = f"{newname[0][id]}{ext}"
    os.rename(file, new_file_name)

内容的提问来源于stack exchange,提问作者Oussama Rahim

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.22 06:10:05