python实现批量修改文件名代码

作者:_昭昭_ 时间:2023-05-04 14:44:41 

我曾以为,写脚本是很难的,直到我遇到了Python

前言随着国内版权意识的跟进,很多影视音乐资源开始收费,而且度盘又经常随意封杀各种资源,所以,为了保护资源,老司机们越来越倾向于把资源下载到本地,但随着本地资源量的增多,资源管理就成了一件比较头疼的事情;对于资源的管理,方法有很多,我比较喜欢为资源起一个好记的名字,但改文件名是一件无聊又耗时的事情,所以,一个批量重命名的脚本就变得非常重要.

1.批量添加前缀功能

python实现批量修改文件名代码

批量重命名

批量重命名逻辑,分三步:

(1)确定需要命名的文件们
(2)确定新的文件名
(3)改名

逻辑理清,编码就变得很简单了

python实现批量修改文件名代码
10行代码

上图源码:


# 导入python内置的os模块和sys模块
import os
import sys

# 程序入口
if __name__ == "__main__":
 # 获取需要添加的前缀
 pre = input("请输入需要添加的前缀:")
 # 为了美观,为前缀添加一个中括号
 mark = "[%s]"%pre
 # 获取本目录下所有的文件名
 old_names = os.listdir()
 # 遍历目录下的文件名
 for old_name in old_names:
   # 跳过本脚本文件
   if old_name != sys.argv[0]:
     # 用新的文件名替换旧的文件名
     os.rename(old_name, mark+old_name)

2.(扩展)添加移除前缀功能:

上面的10行程序,只能批量增加前缀,不能批量移除,不太完善,这是增加了移除前缀功能的源码

python实现批量修改文件名代码
添加/移除

上图源码:


import os
import re
import sys

def add_mark():
 pre = input("请输入需要添加的前缀:")
 mark = "[%s]"%pre
 old_names= os.listdir()
 for old_name in old_names:
   if old_name != sys.argv[0]:
     os.rename(old_name, mark+old_name)

def remove_mark():
 old_names= os.listdir()
 for old_name in old_names:
   try:
     result = re.match(r"(^\[.*\])(.*)", old_name).group(2)
     rm = old_name

if result:
       os.rename(old_name, result)
     print("已为%s移除前缀"%rm)
   except Exception as e:
     pass

def main():
 while True:
   option = int(input("请选择功能数值:\n1.添加前缀\n2.删除前缀\n3.退出程序\n"))
   if option == 1:
     add_mark()
   elif option == 2:
     remove_mark()
   else:
     exit()

if __name__ == "__main__":
 main(

后记:

python是一门简洁强大的语言,随着人工智能的兴起,python也会变得越来越受人们的重视,你有什么理由不爱上python呢?

来源:http://www.jianshu.com/p/2403e013bee4

标签:python,批量修改文件名
0
投稿

猜你喜欢

  • python 字典有序并写入json文件过程解析

    2021-08-21 21:12:01
  • OpenCV立体图像深度图Depth Map基础

    2021-09-23 22:12:59
  • CSS Menu导航菜单下载网站整理

    2007-10-21 19:49:00
  • python面试题之列表声明实例分析

    2022-01-10 12:46:51
  • Mootools 1.2教程(18)——Class 类(第一部分)

    2008-12-19 12:45:00
  • python入门课程第二讲之怎么运行Python

    2023-06-12 11:44:54
  • SQL Server的链接服务器技术小结

    2024-01-17 03:41:22
  • Python 文件操作的详解及实例

    2021-06-05 12:59:12
  • 如何禁止搜索引擎收录你的网站

    2008-10-20 12:57:00
  • Golang指针的操作以及常用的指针函数

    2024-02-08 11:46:49
  • JSP之表单提交get和post的区别详解及实例

    2024-03-26 09:06:39
  • 八种获取当前日期的js代码

    2007-09-07 10:26:00
  • windows系统下Python环境搭建教程

    2021-06-25 11:07:53
  • Python Opencv图像处理基本操作代码详解

    2023-06-08 08:08:05
  • 搜索结果页(SERP):前言

    2009-07-22 20:56:00
  • JavaScript使用ZeroClipboard操作剪切板

    2024-04-29 13:38:14
  • ASP无组件汉字验证码

    2008-05-08 13:19:00
  • 如何基于线程池提升request模块效率

    2023-06-12 11:13:44
  • 对python使用http、https代理的实例讲解

    2022-03-13 00:03:08
  • Python全排列操作实例分析

    2023-08-24 20:17:54
  • asp之家 网络编程 m.aspxhome.com