Python_两个jpg图片文件名称互换

项目场景

处理Adobe Photoshop导出的两个切片的顺序错误问题

小编在进行图片切片处理的时候,发现用PS导出的切片顺序错误,例如用PS导出的切片分别为test_01.jpg,test_02.jpg,但实际的使用需求是将两个图片的顺序调换,调换后名称无所谓,重点是顺序要对,如下图所示:


环境需求

  • python 3.x+

程序代码

swap_names.py

创建swap_names.py,将下面的代码复制到swap_names.py中,保存。

python 复制代码
import os  
  
def swap_names(directory='.'):  
    # 遍历指定目录下的所有文件  
    for filename in os.listdir(directory):  
        # 检查文件是否是jpg图片  
        if filename.lower().endswith('.jpg'):  
            # 分离文件名和扩展名  
            base, ext = os.path.splitext(filename)  

            # 检查文件名是否以'01'或'02'结尾  
            if base.endswith('01'):
                print (base)
                # 构造新的文件名,将'01'替换为'02'  
                new_filename = 'Anew'+base[:-2] + '02' + ext  
#                 print (new_filename)
                # 检查新文件名是否已存在,以避免覆盖  
                if new_filename not in os.listdir(directory):  
                    os.rename(os.path.join(directory, filename),os.path.join(directory, new_filename))  
                    print(f"Renamed1 '{filename}' to '{new_filename}'")  
            elif base.endswith('02'):  
                # 构造新的文件名,将'02'替换为'01' 
                new_filename2 = 'Anew'+base[:-2] + '01' + ext  
                print (new_filename2)
                # 检查新文件名是否已存在  
                if new_filename2 not in os.listdir(directory):  
                    os.rename(os.path.join(directory, filename), os.path.join(directory, new_filename2))  
                    print(f"Renamed2 '{filename}' to '{new_filename2}'")  
  
if __name__ == "__main__":  
    #调用函数,默认处理当前目录  
    swap_names()
    print ("Done!")

操作步骤

将上述创建的文件复制到和图片的文件下

然后在弹出的窗口内输入,点击Enter:

dos 复制代码
python swap_names.py

小结

上述代码的局限性比较强,只是针对两张图片的互换名称,对于其他情况,需另行编写代码。

相关推荐
dreadp2 分钟前
解锁豆瓣高清海报(二) 使用 OpenCV 拼接和压缩
图像处理·python·opencv·计算机视觉·数据分析
Tester_孙大壮11 分钟前
第32章 测试驱动开发(TDD)的原理、实践、关联与争议(Python 版)
驱动开发·python·tdd
小王子10244 小时前
设计模式Python版 组合模式
python·设计模式·组合模式
Mason Lin5 小时前
2025年1月22日(网络编程 udp)
网络·python·udp
清弦墨客5 小时前
【蓝桥杯】43697.机器人塔
python·蓝桥杯·程序算法
RZer7 小时前
Hypium+python鸿蒙原生自动化安装配置
python·自动化·harmonyos
CM莫问8 小时前
什么是门控循环单元?
人工智能·pytorch·python·rnn·深度学习·算法·gru
查理零世8 小时前
【算法】回溯算法专题① ——子集型回溯 python
python·算法
圆圆滚滚小企鹅。9 小时前
刷题记录 HOT100回溯算法-6:79. 单词搜索
笔记·python·算法·leetcode
纠结哥_Shrek10 小时前
pytorch实现文本摘要
人工智能·pytorch·python