使用python批量修改图片名称

一、使用场景

  • 修改模式:原图片名称.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表中建立一一对应的关系,再进行修改。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

C++ 11 新特性

目录 1. 支持特性的编译器版本2. 模板表达式中空格3. 空指针4. auto5. 统一初始化6. explict7. 范围for8. default,delete9. 化名模板(alias template)10. using11. noexcept12. override13. final14. decltype15. lambda16. Variadic Templa…

3个ui自动化测试痛点

当我们找工作的时候查看招聘信息发现都需要有自动化测试经验,由此看来测试人员不会一点自动化测试技术都不好意思说自己是做软件测试的。大部分测试人员也都是从使用自动化测试工具、录制回放、测试脚本、开发小工具入门自动化测试的,然后在慢慢的接触 U…

Ubuntu中安装R语言环境并在jupyter kernel里面增加R kernel

❤️觉得内容不错的话,欢迎点赞收藏加关注😊😊😊,后续会继续输入更多优质内容❤️ 👉有问题欢迎大家加关注私戳或者评论(包括但不限于NLP算法相关,linux学习相关,读研读博…

时间序列预测(2) — 时间序列预测数据集

目录 数据集1:GEFCom2014负荷数据 数据集2:爱奇艺用户留存预测挑战赛数据集 数据集1:GEFCom2014负荷数据 数据集下载: 百度网盘:链接:https://pan.baidu.com/s/1PgCWHx8vYUfGB9UGtCmaVA?pwdktn0 提取码…

基于SSM+Vue的网上购物商城

基于SSMVue的网上购物商城的设计与实现~ 开发语言:Java数据库:MySQL技术:SpringMyBatisSpringMVC工具:IDEA/Ecilpse、Navicat、Maven 系统展示 主页 商品详情 登录界面 管理员界面 用户界面 可视化图标 摘要 基于SSM&#xff0…

JavaScript_动态表格,实现全选,全不选,反选功能,点击第一个复选框,获取所有的checkbox,给所有tr绑定鼠标移到元素之上和移出元素事件。

<!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><title>表格全选、全不选&#xff0c;反选</title><style>table{border: 1px solid;width: 500px;margin-left: 30%;}td,th{text-align: center;b…

Web APIs——BOM和延迟函数setTimeout

1、window对象 1.1 BOM&#xff08;浏览器对象模型&#xff09; BOM&#xff08;Browser Object Model&#xff09;是浏览器对象模型 window对象是一个全局对象&#xff0c;也可以说是JavaScript中的顶级对象像document、alert()、console.log()这些都是window的属性&#xf…

POWER APPS:必填项功能

Power apps的Forms组件中&#xff0c;它的卡片有个属性为Required。作用为提醒此项为必填&#xff0c;且在submitform时检查此项是否有值&#xff0c;没有值就无法正常提交&#xff0c;且会有提示。 另外可对提交按钮的属性displaymode做一次判断&#xff0c;只允许按钮在窗体中…

JDK更换版本不生效问题

JDK版本更换 问题: 当本地电脑拥有多个版本jdk时, 切换jdk版本不生效 解决方案: 1.查看环境变量(高版本的jdk安装时自动注入环境变量) 2.将Path里面的jdk的bin配置上移到最上面 3.查看jdk版本, java -version 启动项目,显示如下使用了jdk17

windows 使用命令关闭进程

1.使用cmd命令打开命令窗口 2.输入命令&#xff1a;netstat -aon|findstr 端口号 查询出该端口进程、以及进程pid 3.使用查询出来的pid杀掉进程&#xff0c;输入命令&#xff1a;taskkill /pid 32188 /f

STM32F4 GPIO端口二极管作用——二极管钳位作用

如上图所示&#xff0c;有两个保护二极管&#xff0c;用于保护内部电路&#xff0c;防止I\O引脚外部过高或者过低的电压输入时造成内部电路损坏。 具体来讲&#xff1a;当引脚输入电压高于VDD时&#xff0c;上面的二极管导通&#xff0c;输入点电压被钳位到约VDD0.7V&#xff…

财报解读:加码布局中国市场,阿迪达斯能否再次华丽转身?

“哪里有世界冠军&#xff0c;哪里就有阿迪达斯”是过去人们对阿迪达斯江湖地位的肯定。作为体育运动用品行业的元老&#xff0c;阿迪达斯全球运动市场份额排名第二&#xff0c;是第一个进入中国市场的国外鞋服运动品牌&#xff0c;曾连续23个季度在大中华区实现销售额两位数增…

activiti7审批驳回,控制变量无法覆盖,导致无限循环驳回,流程无法结束

项目开发过程中使用工作流&#xff0c;因此考虑使用activiti7做完工作流引擎。项目开发过程中&#xff0c;发现流程驳回时&#xff0c;再次执行流程&#xff0c;控制变量无法覆盖&#xff0c;导致无限循环驳回&#xff0c;流程无法结束。流程图如下图所示&#xff1a; 驳回控制…

JVM:如果是你,你如何解决跨代引用的问题?(记忆集和卡集)

这部分内容主要是为了稍后介绍各款垃圾收集器时做前置知识铺垫&#xff0c;如果对这部分内容感到枯燥或者疑惑&#xff0c;可以先放下看&#xff0c;等后续遇到要使用它们的实际场景、实际问题时再结合问题&#xff0c;再回来阅读和理解。 记忆集和卡集 前面在分代收集理论那…

OpenGL_Learn10(颜色)

1. 颜色 我们在现实生活中看到某一物体的颜色并不是这个物体真正拥有的颜色&#xff0c;而是它所反射的(Reflected)颜色。换句话说&#xff0c;那些不能被物体所吸收(Absorb)的颜色&#xff08;被拒绝的颜色&#xff09;就是我们能够感知到的物体的颜色。例如&#xff0c;太阳光…

京东商品详情API接口使用方法以及示例代码,可高并发请求

京东商品详情API接口是一种用于获取京东商品详细信息的接口。通过该接口&#xff0c;开发人员可以获取到商品的ID、名称、价格、销量、评价等信息&#xff0c;从而进行进一步的数据分析和应用开发。本文将介绍京东商品详情API接口的使用方法、注意事项以及示例代码。 一、使用…

Python语言的十大特性。

文章目录 前言一、Python二、Python 编程语言的特性三、开源四、Python 中的 GUI 编程支持五、Python 支持高级语言六、可扩展性七、可移植性八、大型标准库九、解释性语言十、面向对象程序设计语言十一、表达力十二、常见问题总结Python技术资源分享1、Python所有方向的学习路…

第四章mlp

生成数据集 读取数据集 data.TensorDataset(*data_arrays)mlp训练 loss nn.CrossEntropyLoss(reductionnone)我要掌握所有人脖颈上的绳 权重衰减 简单概述就是在标准意义的loss函数&#xff08;label值和计算值的差别&#xff09;中再加上一个 惩罚项&#xff0c;为什么要…

A2Attention模型介绍

A2Attention的核心思想是首先将整个空间的关键特征收集到一个紧凑的集合中&#xff0c;然后自适应地将其分布到每个位置&#xff0c;这样后续的卷积层即使没有很大的接收域也可以感知整个空间的特征。第一级的注意力集中操作有选择地从整个空间中收集关键特征&#xff0c;而第二…

Rocky DEM 高尔顿板 小球掉落正态分布模拟

Rocky DEM 高尔顿板 小球掉落正态分布模拟 前言一、外部三维模型的建立二、导入到Rocky中并设置1.导入外部三维模型2.打开3D视图3.添加颗粒入口界面4.添加颗粒并设置属性5.设置颗粒与墙壁的碰撞属性6.设置颗粒入口流量7.求解 三、动画序列设置并导出 前言 刚开始学习离散元软件…