Python脚本:对文件进行批量重命名

2024-09-08 14:38

本文主要是介绍Python脚本:对文件进行批量重命名,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

  • 字符替换:批量对文件名中指定字符进行替换
  • 添加前缀:批量向原文件名添加前缀
  • 添加后缀:批量向原文件名添加后缀
import osdef Rename_CharReplace():#对文件名中某字符进行替换(已完结)re_dir = os.getcwd()re_list = os.listdir(re_dir)original_char = input('请输入你要替换的字符:')replace_char = input('请输入替换内容:')num = 0for old_name in re_list:split = os.path.splitext(old_name)if not split[1] == '.py':if old_name.find(original_char) >= 0:new_name = old_name.replace(original_char, replace_char)if not os.rename(old_name, new_name):print('文件%s已成功重命名为%s\n' % (old_name, new_name))num += 1else:print('警告:文件%s未能成功重命名\n' % old_name)           print('\n共成功重命名%d个文件' % num)print('-----------------------------------------------')def Rename_AddPrefix():#向文件名中添加前缀(已完结)re_dir = os.getcwd()re_list = os.listdir(re_dir)add_prefix = input('请输入您要添加的前缀:')num = 0for old_name in re_list:split = os.path.splitext(old_name)if not split[1] == '.py':new_name = add_prefix + old_nameif not os.rename(old_name, new_name):print('文件%s已成功重命名为%s\n' % (old_name, new_name))num += 1else:print('警告:文件%s未能成功重命名\n' % old_name)print('\n已成功重命名%d个文件' % num)print('-----------------------------------------------')def Rename_AddSuffix():#向文件中添加后缀(已完结)re_dir = os.getcwd()re_list = os.listdir(re_dir)add_suffix = input('请输入您要添加的后缀:')num = 0for old_name in re_list:split = os.path.splitext(old_name)if not split[1] == '.py':new_name = split[0] + add_suffix + split[1]if not os.rename(old_name, new_name):print('文件%s已成功重命名为%s\n' % (old_name, new_name))num += 1else:print('警告:文件%s未能成功重命名\n' % old_name)print('\n共成功重命名%d个文件' % num)print('-----------------------------------------------')#主程序
print('-----------------------------------------------')
print('欢迎使用unstring文件批量重命名工具')
print('QQ:29474854')
print('本程序可实现三种方式的重命名:①替换文件名中的指定字符')
print('                         ②为文件添加指定前缀')
print('                         ③为文件添加指定后缀')
print('-----------------------------------------------')while True:choice = input('请选择你的命名方式(数字1,2,3即可,q退出):')if choice == '1':Rename_CharReplace()elif choice == '2':Rename_AddPrefix()elif choice == '3':Rename_AddSuffix()elif choice == 'q':breakelse:print('请选择正确的命名方式:')

以上就是该脚本代码,该脚本是使用Python3.x版本写的,对其中使用的模块以及函数进行简单的解释:

  • os.getcwd()是获取该脚本所在文件夹路径;
  • os.listdir(“path”)是将路径“path”目录下所有文件以及子目录列出来并返回列表;
  • os.path.splitext(“filepath”)是将文件路径及文件名和文件后缀进行分割并返回列表,其中1号元素- 为文件后缀。
  • replace(old,new)将new字符串与old字符串进行替换
  • os.rename()对文件进行重命名

需要的函数什么的基本上介绍完了,其实只要了解了这几个函数再加上一点Pyhon的语法基础就可以写出这个脚本了,技术含量略低。

http://www.2liang.me/archives/18

这篇关于Python脚本:对文件进行批量重命名的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1148391

相关文章

SpringBoot中六种批量更新Mysql的方式效率对比分析

《SpringBoot中六种批量更新Mysql的方式效率对比分析》文章比较了MySQL大数据量批量更新的多种方法,指出REPLACEINTO和ONDUPLICATEKEY效率最高但存在数据风险,MyB... 目录效率比较测试结构数据库初始化测试数据批量修改方案第一种 for第二种 case when第三种

python生成随机唯一id的几种实现方法

《python生成随机唯一id的几种实现方法》在Python中生成随机唯一ID有多种方法,根据不同的需求场景可以选择最适合的方案,文中通过示例代码介绍的非常详细,需要的朋友们下面随着小编来一起学习学习... 目录方法 1:使用 UUID 模块(推荐)方法 2:使用 Secrets 模块(安全敏感场景)方法

MySQL深分页进行性能优化的常见方法

《MySQL深分页进行性能优化的常见方法》在Web应用中,分页查询是数据库操作中的常见需求,然而,在面对大型数据集时,深分页(deeppagination)却成为了性能优化的一个挑战,在本文中,我们将... 目录引言:深分页,真的只是“翻页慢”那么简单吗?一、背景介绍二、深分页的性能问题三、业务场景分析四、

使用Python删除Excel中的行列和单元格示例详解

《使用Python删除Excel中的行列和单元格示例详解》在处理Excel数据时,删除不需要的行、列或单元格是一项常见且必要的操作,本文将使用Python脚本实现对Excel表格的高效自动化处理,感兴... 目录开发环境准备使用 python 删除 Excphpel 表格中的行删除特定行删除空白行删除含指定

SpringBoot结合Docker进行容器化处理指南

《SpringBoot结合Docker进行容器化处理指南》在当今快速发展的软件工程领域,SpringBoot和Docker已经成为现代Java开发者的必备工具,本文将深入讲解如何将一个SpringBo... 目录前言一、为什么选择 Spring Bootjavascript + docker1. 快速部署与

golang程序打包成脚本部署到Linux系统方式

《golang程序打包成脚本部署到Linux系统方式》Golang程序通过本地编译(设置GOOS为linux生成无后缀二进制文件),上传至Linux服务器后赋权执行,使用nohup命令实现后台运行,完... 目录本地编译golang程序上传Golang二进制文件到linux服务器总结本地编译Golang程序

Python通用唯一标识符模块uuid使用案例详解

《Python通用唯一标识符模块uuid使用案例详解》Pythonuuid模块用于生成128位全局唯一标识符,支持UUID1-5版本,适用于分布式系统、数据库主键等场景,需注意隐私、碰撞概率及存储优... 目录简介核心功能1. UUID版本2. UUID属性3. 命名空间使用场景1. 生成唯一标识符2. 数

linux解压缩 xxx.jar文件进行内部操作过程

《linux解压缩xxx.jar文件进行内部操作过程》:本文主要介绍linux解压缩xxx.jar文件进行内部操作,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、解压文件二、压缩文件总结一、解压文件1、把 xxx.jar 文件放在服务器上,并进入当前目录#

SpringBoot中如何使用Assert进行断言校验

《SpringBoot中如何使用Assert进行断言校验》Java提供了内置的assert机制,而Spring框架也提供了更强大的Assert工具类来帮助开发者进行参数校验和状态检查,下... 目录前言一、Java 原生assert简介1.1 使用方式1.2 示例代码1.3 优缺点分析二、Spring Fr

Python办公自动化实战之打造智能邮件发送工具

《Python办公自动化实战之打造智能邮件发送工具》在数字化办公场景中,邮件自动化是提升工作效率的关键技能,本文将演示如何使用Python的smtplib和email库构建一个支持图文混排,多附件,多... 目录前言一、基础配置:搭建邮件发送框架1.1 邮箱服务准备1.2 核心库导入1.3 基础发送函数二、