Python实现批量修改文件名实例

yipeiwu_com5年前Python基础

本文实例讲述了Python实现批量修改文件名的方法。分享给大家供大家参考。具体如下:

下载了评书《贺龙传奇》,文件名中却都含有xxx有声下载,用脚本将其去掉。脚本涉及os.rename重命名方法,str.partition方法使用, 及正则match,search方法区别

# encoding:utf-8
##
# 文件名如:
# 贺龙传奇\d+[有声下吧www.ysx8.com].mp3
##
import os,re
fs=os.listdir('单田芳_贺龙传奇')
for f in fs:
  ######方法一:partition获取无用字符
  #1.将文件名以'['符分为3部分
  #ls=f.partition('[')
  #2.ls[0]为需要文件名,因此获取ls[1:]
  #dirtystring = ''.join(ls[1:])
  #3.开始替换
  #newname=f.replace(dirtystring, '') + '.mp3')
  #os.rename('单田芳_贺龙传奇/' + f, newname)
  ######方法二:正则获取无用字符
  dirtymatch = re.search(r'\[.*?\]', f)
  if dirtymatch:
    dirtystring=dirtymatch.group(0)
    newname=f.replace(dirtystring, '') + '.mp3'
    os.rename('单田芳_贺龙传奇/' + f, newname)
  #注意:可以直接用re.sub方法进行正则替换掉文件名中不需要字符

希望本文所述对大家的Python程序设计有所帮助。

相关文章

对Python3之进程池与回调函数的实例详解

进程池 代码演示 方式一 from multiprocessing import Pool def deal_task(n): n -= 1 return n if __...

Python实现串口通信(pyserial)过程解析

pyserial模块封装了对串口的访问,兼容各种平台。 安装 pip insatll pyserial 初始化 简单初始化示例 import serial ser = se...

解决Django migrate No changes detected 不能创建表的问题

起因 修改了表结构以后执行python3 manage.py migrate 报错: django.db.utils.OperationalError: (1091, "Can't...

python写一个md5解密器示例

python写一个md5解密器示例

前言: md5解密,百度了一下发现教程不是很多也不详细。 这个图都没一张。。。 0x01 windows环境,kali也可以啊 burpsuite requests模块 bs4模块 0...

Python处理文本换行符实例代码

Python处理文本换行符实例代码

本文研究的主要是Python处理文本换行符的相关内容,具体如下。 源文件每行后面都有回车,所以用下面输出时,中间会多了一行 try: with open("F:\\hjt.txt...