python练习程序批量修改文件名

yipeiwu_com7年前Python基础

复制代码 代码如下:

# encoding:utf-8

##
# 文件名如:
# 下吧.mp3
##
import os,re

fs=os.listdir('xb')
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('xb/' + f, newname)

 ######方法二:正则获取无用字符
 dirtymatch = re.search(r'\[.*?\]', f)
 if dirtymatch:
  dirtystring=dirtymatch.group(0)
  newname=f.replace(dirtystring, '') + '.mp3'
  os.rename('xb/' + f, newname)

 #注意:可以直接用re.sub方法进行正则替换掉文件名中不需要字符

相关文章

Python 闭包,函数分隔作用域,nonlocal声明非局部变量操作示例

本文实例讲述了Python 闭包,函数分隔作用域,nonlocal声明非局部变量操作。分享给大家供大家参考,具体如下: 实例对象也可以实现闭包的功能,不过实例对象消耗的资源(内存)比闭包...

python实现基于信息增益的决策树归纳

本文实例为大家分享了基于信息增益的决策树归纳的Python实现代码,供大家参考,具体内容如下 # -*- coding: utf-8 -*- import numpy as np i...

Python多线程编程(八):使用Event实现线程间通信

使用threading.Event可以实现线程间相互通信,之前的Python:使用threading模块实现多线程编程七[使用Condition实现复杂同步]我们已经初步实现了线程间通信...

Python编程给numpy矩阵添加一列方法示例

首先我们有一个数据是一个mn的numpy矩阵现在我们希望能够进行给他加上一列变成一个m(n+1)的矩阵 import numpy as np a = np.array([[1,2,3...

关于sys.stdout和print的区别详解

关于sys.stdout和print的区别详解

一、sys.stdout的形式就是print的一种默认输出格式,等于print "%VALUE%" print函数是对sys.stdout的高级封装,看下print函数的解释 Pri...