前一篇文章(Python实现批量重命名),用Pyton做了一个批量重命名的小脚本程序,但是觉得这个用起来不太方便,于是想要进行一些改进,最好再加上GUI。

一、

首先,它的修改路径是写死在代码中的:# 图片存放的路径

path = r"D:/temp"

所以这一次想要改成可以由用户自己选择的形式,就像下面这样:

二、

为程序加一个简单的GUI界面,让它有更好的体验。

该GUI界面是使用Python自带的tkinter库实现的。

三、

原来的程序的设定是将文件重命名为递增的.jpg文件,现在进行了一些改进,改为了原来是什么类型的文件,重命名后还是什么类型的文件,即不改变文件类型,仅改变主文件名。

原:os.rename(os.path.join(path,file),os.path.join(path,str(num))+".jpg")

现:os.rename(os.path.join(path.get(),file),os.path.join(path.get(),str(num))+'.'+file.split('.')[-1])

四、

基本操作演示

# FilesBatchRenameWithGUI.py

# 导入需要的库

import tkinter as tk

from tkinter import filedialog

import os

# 控制文件列表显示函数

def DisplayList():

listbox.delete(0,tk.END)

for file in os.listdir(path.get()):

listbox.insert(tk.END,file)

# 获取文件夹路径函数

def GetPath():

filepath = filedialog.askdirectory()

path.set(filepath)

DisplayList()

# 批量重命名函数

def HandelFiles():

num = 1

for file in os.listdir(path.get()):

print(file)

os.rename(os.path.join(path.get(),file),os.path.join(path.get(),str(num))+'.'+file.split('.')[-1])

num = num + 1

DisplayList()

root = tk.Tk()

root.title('批量重命名')

root.resizable(0,0)

path = tk.StringVar() # 定义路径变量

# 定义控件

listbox = tk.Listbox(root)

label = tk.Label(root,text="文件夹路径:")

entry = tk.Entry(root,textvariable=path)

button1 = tk.Button(root,text="选择路径",command=GetPath)

button2 = tk.Button(root,text="开始处理",command=HandelFiles)

# 调整控件布局

label.grid(row=0,column=0)

entry.grid(row=0,column=1)

button1.grid(row=0,column=2)

button2.grid(row=0,column=3)

listbox.grid(row=1,column=0,columnspan=4,sticky=tk.W+tk.E)

root.mainloop()

(全文完)

python重命名窗口_为《Python实现批量重命名》程序加一个GUI相关推荐

  1. python有趣的库_Python有趣的库tqdm,给程序加一个进度条吧!

    Python开发过程中,经常会使用到大量的循环,如果能有个进度条提示我们当前程序执行到第几步了,这会是一个很有用的功能. tqdm在阿拉伯语中表示"progress",而在西班牙语 ...

  2. python做ui界面_用python编写简单ui界面窗口

    新用户新地理处理,最常见的方法是使用工具对话框执行地理处理操作.当必须执行一次只有一个工具,这个工具对话框确实是一个好方法去经营.地理处理工具易于使用和显示警告图标或错误图标及相关消息旁边不当使用参数 ...

  3. python画交互式地图_使用Python构建交互式地图-入门指南

    python画交互式地图 Welcome to The Beginner's Guide to Building Interactive Maps in Python 欢迎使用Python构建交互式地 ...

  4. python人脸口罩识别_基于Python+OpenCV的人脸口罩识别检测

    以下编程在Jupyter notbook平台上进行 一.OpenCV下载安装 二.人脸口罩数据集下载处理 (一)人脸口罩数据集下载 下载人脸口罩数据集的目的是利用OpenCV进行模型训练,这里采用口罩 ...

  5. python tkinter计算器实例_使用Python自带GUI tkinter编写一个期权价格计算器

    0 准备工作 首先,确认环境中有numpy.scipy.stats和tkinter三个功能包.前两个功能包可用于Python的数学计算,比如使用numpy来生成随机数用于Monte Carlo模拟,以 ...

  6. python 布莱克舒尔斯_使用Python自带GUI tkinter编写一个期权价格计算器

    0 准备工作 首先,确认环境中有numpy.scipy.stats和tkinter三个功能包.前两个功能包可用于Python的数学计算,比如使用numpy来生成随机数用于Monte Carlo模拟,以 ...

  7. python大牛 关东升_《Python从小白到大牛》第4章 Python语法基础

    本章主要为大家介绍Python的一些语法,其中包括标识符.关键字.常量.变量.表达式.语句.注释.模块和包等内容. 标识符和关键字 任何一种计算机语言都离不开标识符和关键字,因此下面将详细介绍Pyth ...

  8. python程序设计课程设计_《Python程序设计》教学大纲.doc

    PAGE 理论课程教学大纲 <Python程序设计>教学大纲 课程编号: 总 学 时:64(其中,讲课:32:实验:32) 学 分:3 实践教学:0周 修读专业:地理信息系统.应用化学 大 ...

  9. 以下选项中python用于异常处理结构_《Python 程序设计》复习题

    目录 填空题 一.基础知识 二.序列 三.选择结构与循环结构和函数及面向对象.文件 选择题 一.Python 基础语法 二.基本数据类型 三.程序的控制结构 四.函数和代码复用 五.组合数据类型 六. ...

最新文章

  1. java程序代码的运行机制_1.4Java程序的运行机制
  2. TF之LSTM:利用基于顺序的LSTM回归算法对DIY数据集sin曲线(蓝虚)预测cos(红实)(TensorBoard可视化)
  3. 花费一天时间基于Vue创建的epub小说阅读器效果展示及源码分享
  4. java break的用法_Java基础break、continue语句的用法
  5. 数据库连接池的选择及其开发配置
  6. iOS相同字符串保存地址唯一
  7. 自考----怎么说我不爱你
  8. 天龙源码框架分析_天龙源码分析 - 客户端登录流程
  9. 提取PCA变换后的图像的各主成分(matlab代码)
  10. android studio程序开机启动,Android Studio中创建和启动AVD【Android】
  11. EPUBBuilder编辑器新版
  12. 面料ERP_面料软件_面料管理软件
  13. 出价成本计算机软件,百度竞价推广中,关键词怎么出价可以降低成本?
  14. html5拖拽表单设计器,可视化表单设计器拖拽生成表单(原创)
  15. windows下的WSL开发环境配置以及相关工具、插件
  16. Scrapy框架整合英雄缩略图(APP)
  17. GBK转UTF8汉字数量为奇数位时,多出来的末尾汉字会乱码
  18. Unity3D状态机运行状态不显示解决方案哈哈哈
  19. EasyFlash移植
  20. WP-春秋云镜-Unauthorized靶场完全通关指南

热门文章

  1. 执行jar包,输出信息到文件
  2. Unity3D_(游戏)控制物体的上、下、左、右移动
  3. Spring简洁总结
  4. C#操作Excel(1)Excel对象模型
  5. 【CentOS 6.5】QtCreator启动时关于dbus-1的错误解决方法
  6. GridView 添加分害线
  7. 基础算法学习(二)_二叉树及应用赫夫曼编码
  8. bool与string互转
  9. A star算法优化二
  10. Linux内核LED子系统、请务必看