使用python批量修改图片名称

news2025/1/11 11:11:22

一、使用场景

  • 修改模式:原图片名称.png =》 目标图片名称.png
  • 条件:目标图片名称 包含 原图片名称
  • 准备工作:目标图片名称填写在excel当中,把excel放进图片文件夹内

二、代码示例

import os
import pandas as pd
import numpy as np
 
# 读取excel
print('读取excel……')
datas = pd.read_excel('图片文件夹名称/excel文件名称.xlsx', header=None)   #这里使用相对路(excel)
data = datas.values  #只读取excel中的值,不读取序号
resource = list(np.concatenate(data.reshape((-1, 1), order="F")))  #将读取的数据转换为list
print('读取成功!')

# 读取图片
print()
print('读取图片……')    #这里使用相对路(图片)
folder_path = "图片文件夹名称/"
image_list = os.listdir(folder_path)
print('读取成功!')
 
# 批量修改
count = 0   #统计修改数量
print()
print('开始批量处理……')
for file_name in resource:
    new_image_name = file_name + '.png'
    for image_name in image_list:
        format_image_name = ''.join([i.strip(' ') for i in image_name])  #去掉空格
        if (new_image_name != format_image_name) & (new_image_name.find(format_image_name) != -1):
            # 旧文件路径
            old_path = os.path.join(folder_path, image_name)
            # 新文件路径
            new_path = os.path.join(folder_path, new_image_name)
            # 修改文件名
            os.rename(old_path, new_path)
            # 修改数量+1
            count += 1
            print(str(count) + '-修改成功:' + image_name + ' => ' + new_image_name )

# 完成
print('批量修改完成:' + str(count) + '张')

运行结果:

三、说明

上面的示例只是博主根据自己的使用场景编写的代码,大家可以根据自己的实际应用场景进行修改,原理都相似。

在此列举其他可能的使用场景:

1.  如果只是单纯给原文件名 加固定的字符 or 加有规律的数据,则不需要使用excel,直接读取原图片名称后加上自己需要的字符or数据,再更改命名。

2.  如果原图片名称和目标图片名称 没有包含关系 or 完全没有关联,可以在excel表中建立一一对应的关系,再进行修改。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1188770.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

西周就已经开始用WIFI了?带你了解路由器的“前世今生”

说起路由器,如果再往前10年,可能还不是那么普及,但如今再提及,基本上已经是家家户户必备的科技产品之一,无论是老人还是小孩对它也都很熟悉了,这样的变化不禁让人感叹科技的发展之快。 去年的三星堆文物又有…

2011年03月17日 Go生态洞察:探索Go与C的交互——Cgo

🌷🍁 博主猫头虎(🐅🐾)带您 Go to New World✨🍁 🦄 博客首页——🐅🐾猫头虎的博客🎐 🐳 《面试题大全专栏》 🦕 文章图文…

使用eXplorer本地搭建免费在线文件管理器并实现远程登录——“cpolar内网穿透”

文章目录 1. 前言2. eXtplorer网站搭建2.1 eXtplorer下载和安装2.2 eXtplorer网页测试2.3 cpolar的安装和注册 3.本地网页发布3.1.Cpolar云端设置3.2.Cpolar本地设置 4.公网访问测试5.结语 1. 前言 通过互联网传输文件,是互联网最重要的应用之一,无论是…

【算法-链表3】删除链表倒数第n个节点 + 链表相交

今天,带来XXX的讲解。文中不足错漏之处望请斧正! 理论基础点这里 删除链表倒数第n个节点 1. 思路 直接计算 倒数第n个 正数第size-n1个 比如要删除size为5的链表的倒数第2个节点。 其实就是正数size-n1个。那么,从第一个走到底size-n1个…

【uniapp uview】u--textarea组件custom validator check failed for prop “confirmType“

加一行&#xff1a;confirmType"done"即可。<UTextarea> at node_modules/uview-ui/components/u-textarea/u-textarea.vue<UTextarea> at node_modules/uview-ui/components/u--textarea/u--textarea.vueat pages/notice/noticeDetail.vueuview 文档地址…

73.矩阵置零

给定一个 m x n 的矩阵&#xff0c;如果一个元素为 0 &#xff0c;则将其所在行和列的所有元素都设为 0 。请使用 原地 算法。 示例 1&#xff1a; 输入&#xff1a;matrix [[1,1,1],[1,0,1],[1,1,1]] 输出&#xff1a;[[1,0,1],[0,0,0],[1,0,1]]示例 2&#xff1a; 输入&…

每天一点python——day65

#每天一点Python——65 #字符串的内容对齐操作类似于word中左对齐、右对齐、居中对齐如图 #例&#xff1a; s1hello,python print(s1.center(20,*))#设置宽度20&#xff0c;填充图是*s1有12个字符&#xff0c;这个字符串的宽度设置为20&#xff0c; 20-128 因为center是居中对齐…

概念解析 | 雷达协同认知成像:原理、研究现状与挑战

注1:本文系“概念解析”系列之一,致力于简洁清晰地解释、辨析复杂而专业的概念。本次辨析的概念是:雷达协同认知成像。 概念解析 | 雷达协同认知成像:原理、研究现状与挑战 摘要: 雷达协同认知成像,作为一种先进的感知技术,在军事侦察、民用航空、无人驾驶等领域具有广…

GZ038 物联网应用开发赛题第2套

2023年全国职业院校技能大赛 高职组 物联网应用开发 任 务 书 (第2套卷) 工位号:______________ 第一部分 竞赛须知 一、竞赛要求 1、正确使用工具,操作安全规范; 2、竞赛过程中如有异议,可向现场考评人员反映,不得扰乱赛场秩序; 3、遵守赛场纪律,尊重考评人员,…

NFS文件系统共享服务器实战

架设一台NFS服务器&#xff0c;并按照以下要求配置 准备 两台Linux虚拟机一台作为服务端server&#xff0c;一台作为客户端client server IPV4&#xff1a;192.168.110.136/24 client IPV4&#xff1a;192.168.110.134/24 两台服务器都需要关闭防火墙和seLinux 服…

基于安卓android微信小程序的物流仓储系统

项目介绍 本文以实际运用为开发背景&#xff0c;运用软件工程原理和开发方法&#xff0c;它主要是采用java语言技术和mysql数据库来完成对系统的设计。整个开发过程首先对物流仓储系统进行需求分析&#xff0c;得出物流仓储系统主要功能。接着对物流仓储系统进行总体设计和详细…

微信支付(JSAPI支付)接入流程

一、 常用支付方式 微信当前支持的支付产品有如下这些: 可以根据自己的需要选择接入的支付方式。 接入指引 我们常用的支付方式:JSAPI支付 Native支付 APP支付 JSAPI支付: 商家张贴收款码物料,用户打开扫一扫,扫码后输入金额,完成付款Native支付: 商家在系统中按微信支…

Tomcat隐藏版本号和关闭默认管理页面

一. 隐藏Tomcat异常页面中的版本信息&#xff0c;Tomcat服务器版本号泄露 Tomcat/8.5.xx相关版本号等信息&#xff0c;是不安全的。这会被黑客获取到&#xff0c;利用该版本的其他漏洞对服务器进行异常操作&#xff0c;所以需要隐藏掉。 进入tomcat安装目录 apache-tomcat-8.…

MySQL系列-win10安装MySQL

MySQL系列-win10安装MySQL 1. MySQL系列-win10安装MySQL1.1MySQL下载安装MySQL5.71.2MySQL下载再安装MySQL8.0 未完待续 1. MySQL系列-win10安装MySQL 1.1MySQL下载安装MySQL5.7 下载地址 https://www.mysql.com/downloads/ 进入后&#xff0c;下拉页面&#xff0c;最下面有社…

Zabbix自定义监控内容案例(自动发现、自动注册)

一、自定义监控内容 案例&#xff1a;自定义监控客户端服务器登录的人数 需求&#xff1a;限制登录人数不超过3个人&#xff0c;超过5个人就发出报警 1、在客户端创建自定义key 创建Zabbix监控项配置文件&#xff0c;用于自定义Key #在zabbix的配置文件中定义了会加载放在/e…

Zabbix“专家坐诊”第210期问答汇总

问题一 Q&#xff1a;zabbix触发器条件基于历史趋势的函数有示例吗&#xff1f;还有这些基于历史趋势的函数&#xff0c;具体是读取历史表还是趋势表&#xff1f; A&#xff1a;读历史表&#xff0c;示例可以看看官网的。 https://www.bookstack.cn/read/zabbix-5.0-zh/37cf0…

前端批量下载文件(干货)

如果可以实现记得点赞分享&#xff0c;谢谢老铁&#xff5e; 1.常见的下载方式 (1) window.open() (2) 通过 标签绑定url (3) 通过请求后台API接口进行下载 2.推荐方式 &#xff08;1&#xff09;如果是下载单个文件的 直接用window.open(url, ‘打开方式’) 这里的打开方…

Git 分支设计规范

开篇 这篇文章分享 Git 分支设计规范&#xff0c;目的是提供给研发人员做参考。 规范是死的&#xff0c;人是活的&#xff0c;希望自己定的规范&#xff0c;不要被打脸。 在说 Git 分支规范之前&#xff0c;先说下在系统开发过程中常用的环境。 DEV 环境&#xff1a;用于开发…

rtklib的rtknavi使用

1、点击rtknavi工具 2、配置输入的数据流 采用香港基准站的实时数据流&#xff0c;进行验证。 输入caster的地址 landsd-gncaster.realtime.data.gov.hk 选择HKSS 和HKWS 配置Options 点击运行

2023亚太杯数学建模A题B题C题思路汇总分析

文章目录 0 赛题思路1 竞赛信息2 竞赛时间3 建模常见问题类型3.1 分类问题3.2 优化问题3.3 预测问题3.4 评价问题 4 建模资料5 最后 0 赛题思路 &#xff08;赛题出来以后第一时间在CSDN分享&#xff09; https://blog.csdn.net/dc_sinor?typeblog 1 竞赛信息 2023年第十三…