1 # encoding: utf-8
2 import os
3 import sys
4
5 import openpyxl
6 import tkinter as tk
7 from tkinter import filedialog
8 import tkinter as tk
9 from tkinter import filedialog
10 import tkinter.messagebox as msgbox
11 import tkinter as tk, time
12
13 count = 1
14 def t(pa,expa,she):
15 print(f'\'{pa}\'')
16 print(f'\'{expa}\'')
17 print(f'\'{she}\'')
18 path = f'{pa}'#文件所在文件夹
19 expath =f'{expa}'#名单所在文件夹
20 x1 = openpyxl.load_workbook(expath)#读取excel
21
22 sheet1 = x1[f'{she}']#读取sheet1
23
24 xwsr = 2#修改
25 filelist = os.listdir(path)#读取文件目录
26 for files in filelist:#遍历文件目录
27 xr = sheet1.cell(row=xwsr, column=3)#可变
28 xc = sheet1.cell(row=xwsr, column=4)#可变
29 #可填加
30 Olddir = os.path.join(path,files)#旧的文件位置
31 #os.renames(Olddir,os.path.join(path,str(xylist[count]+".jpg"))#新的文件位置
32 os.rename(Olddir,os.path.join(path,str(xr.value+xc.value)+".jpeg")) #str里可加
33 xwsr = xwsr+1
34 filelist1 = os.listdir(path)#读取文件目录
35 filelist1.sort()
36 sys.exit()
37 def xuan():
38 '''打开选择文件夹对话框'''
39 root = tk.Tk()
40 root.withdraw()
41 msgbox.showinfo('提示','选择要修改命名的图片的存放文件夹')
42 Folderpath = filedialog.askdirectory() #获得选择好的文件夹
43 msgbox.showinfo('提示','选择要腾讯表格')
44 Filepath = filedialog.askopenfilename() #获得选择好的文件
45 msgbox.showinfo('提示','输入sheet1的内容')
46 window = tk.Tk()
47 window.title("输入")
48 e = tk.Entry(window)
49 e.pack()
50 def get():
51 str =e.get()
52 print(f'\'{Folderpath}\'')
53 print('Folderpath:', Folderpath)
54 print('Folderpath:', Filepath)
55 window.destroy()
56 root.destroy()
57 t(Folderpath,Filepath,str)
58 b = tk.Button(window, text="确认", command=get)
59 b.pack()
60 window.mainloop()
61 xuan()

根据自己需要,可以添加多条信息进行重命名。可在

  xr = sheet1.cell(row=xwsr, column=3)#可变
xc = sheet1.cell(row=xwsr, column=4)#可变
后面添加同样的内容。row,无需改变,column为列。添加后,在
os.rename(Olddir,os.path.join(path,str(xr.value+xc.value)+".jpeg")) 在
str(xr.value+xc.value)中添加你刚才添加的变量的值

例子:
 xr = sheet1.cell(row=xwsr, column=3)#可变
xc = sheet1.cell(row=xwsr, column=4)#可变
xb =sheet1.cell(row=xwsr, column=5)#可变
则:
os.rename(Olddir,os.path.join(path,str(xr.value+xc.value+xb.value)+".jpeg"))
即可实现图片重命名。
*说明:缺点:未能实现点击tk窗体右上角的关闭时,无法真正关闭,一直运行。只有选择全部文件和内容的时候,可以完全退出


Python实现图片重命名——实用的更多相关文章

  1. 提取excel表数据成json格式的以及对图片重命名

    开发那边的需求 1.功夫熊猫以及阿狸布塔故事集都是属于剧集的.意思就是有很多集,这里称他们为tv最下面这几行第一列没名字的都是单集的,这里称它们为mv需要统计所有工作表里面的数据把tv放一个大的jso ...

  2. shell(2)图片重命名

    1:图片重命名 原来的图片名字格式: 改成的图片名字格式: #!/bin/bash #重命名 .png和.jpg #如果原文件的图片名称是从0开始,那么count=:从1开始,那么count= cou ...

  3. 使用python脚本统一重命名训练图片文件名

    Yolo算法,在进行模型训练时,常常使用VOC数据格式. 将图片文件复制到JPEGImages目录下,需要对文件名进行VOC标准格式编号重命名,如2020_000001.jpg,2020_000002 ...

  4. Python脚本轻松实现批量图片重命名

    ************************************************************************** 摘要:网上爬取的图片名字很混乱,格式也比较多,需要 ...

  5. Python批量文件重命名

    今天,得到一个里面都是图片的文件夹,但是图片都没有后缀,因此想用Pythton批量地为所有的文件加上".jpg"的后缀,代码如下: #-*- coding:utf-8 -*- #重 ...

  6. python对图片批量命名

    深度学习中经常会有批量对图片进行重命名,从网上看到的资料整理一下,方便以后查看. import os class BatchRename(): ''' 批量重命名文件夹中的图片文件 ''' def _ ...

  7. python3_learn 实现文件夹内批量对图片重命名

    初衷 练习Python,提高动手能力. 珍藏的壁纸文件夹名命有点乱. 可以学习下一些基础的库 开始(.jpg,无筛选) First 首先找到OS库,寻找可以遍历文件名的.找到了OS.walk() os ...

  8. python 小工具 重命名当前文件夹内所有的文件,升序命名

    背景:一个朋友想升序重命名他的照片,但是太多了不想手动所以,emememem os这个模块,不用说,rename,filedir等 #conding=utf8 import os path = os. ...

  9. C++中图片重命名

    非常简单的小程序,满足自己的需求. #include <iostream> #include <fstream> #include<sstream> using n ...

  10. django如何给上传的图片重命名(给上传文件重命名)

    1.先在你项目中添加一个文件夹如:system 在文件夹下添加__init__.py 和storage.py文件,并在storage.py中添加如下代码: # -*- coding: UTF-8 -* ...

随机推荐

  1. [编程基础] 常用html标签使用介绍

    常用html标签使用介绍 本文主要记录常用的html标签使用说明,用起来的时候偶尔查查. 常用html标签列表 标签 英文全拼 作用 特点 <html></html> html ...

  2. [C++]default constructor默认构造函数

    例子: class A{ public: int a; char b; } A temp; cout<<temp.a<<endl; 问题1:什么时候会合成出一个default ...

  3. vulnhub靶场之VULNCMS: 1

    准备: 攻击机:虚拟机kali.本机win10. 靶机:VulnCMS: 1,下载地址:https://download.vulnhub.com/vulncms/VulnCMS.ova,下载后直接vb ...

  4. Linux 查找某一线程是否已运行,并启动的方法

    参考资料:(3条消息) [Linux]守护线程自动重启某个程序的3种常用办法_L7256的博客-CSDN博客_守护进程 自动重启 方法一:使用编写一个监控APP的脚本 start.sh脚本如下:exp ...

  5. 包装类总结-Collection集合概述

    包装类总结 1.基本数据类型对应的包装类byte Byteshort Shortint Integerlong Longfloat Floatdouble Doublechar Characterbo ...

  6. centos7连接WIFI

    centos7图形化界面可以直接连接WIFI,命令行会稍麻烦一些 环境: 1.笔记本安装centos7,没有很大的流量,基本都是交互 2.桌子后面的线路太乱,想要省去一根网线 过程: 1.安装软件 y ...

  7. ubuntu20.04 gnome桌面系统添加开机自启动GUI程序

    在终端执行 gnome-session-properties,点击添加自己的脚本或执行文件,便可以在用户登录后自动执行.

  8. UML 图

    类的表示(Class) 第一层:显示类的名称,如果是抽象类,则就用斜体显示. 第二层:是类的特性,通常就是字段和属性. 第三层:是类的操作,通常是方法或行为(前面加号(+)表示public:减号(-) ...

  9. 图解B树及C#实现(3)数据的删除

    目录 前言 从叶子节点删除数据 从非叶子节点删除数据 提前扩充只有 t-1 的 Item 的节点:维持 B树 平衡的核心算法 从左兄弟节点借用 Item 从右兄弟节点借用 Item 与左兄弟节点或者右 ...

  10. 10分钟搞定简易MVVM

    实现一个简易的 MVVM 分为这么几步来 1.类 Vue:这个类接收的是一个 options. el属性:根元素的id data属性:双向绑定的数据. 2.Dep 类: subNode数组:存放所依赖 ...