python批量修改文件夹中文件名(只针对目标文件夹不包括子文件)

存在问题:
如何对文件夹中的文件名进行批量编辑


解决方案:
采用**os.listdir(file_path)**遍历文件夹提取,然后进行相应编辑,该方法只针对目标文件夹不包括子文件。
如果想对目标文件以及内部的子文件进行操作,请参考:此文
https://blog.csdn.net/coberup/article/details/102582970

分为三种情况:①文件名中部分替换修改;②加前缀;③加后缀
具体方法如下:
1)文件名中部分替换修改

#!coding=utf-8
import os
def replace_filenames(file_path, oldPartName, newPartName): #file_path为文件夹路径;oldPartName需要修改的部分字符;newPartName修改后的字符
    files=os.listdir(file_path)   #获取文档内所有文件
    for file_name in files:  #取出路径父文件夹下各文件名
        if file_name.endswith('.txt'):  #选出要修改的文件类型;此句取消后就不对类型做判断
            if oldPartName in file_name:  #含有要替换的部分文字
                os.rename(os.path.join(file_path,file_name),os.path.join(file_path,file_name.replace(oldPartName,newPartName)))  #进行部分替换
                print('new file name is {0}'.format(file_name.replace(oldPartName,newPartName)))  #输出替换后的名字

replace_filenames(r'F:\movie','被替换的文字', '替换的文字')

2)加前缀

#!coding=utf-8
import os
def addPrefix_filenames(file_path, addPrefix):#file_path为文件夹路径;addPrefix为前缀
    files=os.listdir(file_path)   #获取文档内所有文件
    for file_name in files:  #取出路径父文件夹下各文件名
        if file_name.endswith('.txt'):  #选出要修改的文件类型;此句取消后就不对类型做判断
            os.rename(os.path.join(file_path,file_name),os.path.join(file_path,addPrefix+file_name))  #添加前缀
            print('new file name is {0}'.format(addPrefix+file_name))  #输出添加前缀后的名字

addPrefix_filenames(r'F:movie', 'text-')

3)加后缀

#!coding=utf-8
import os
def addSuffix_filenames(file_path, addSuffix):#file_path为文件夹路径;addSuffix为后缀
    files=os.listdir(file_path)   #获取文档内所有文件
    for file_name in files:  #取出路径父文件夹下各文件名
        if file_name.endswith('.txt'):  #选出要修改的文件类型;此句取消后就不对类型做判断
            os.rename(os.path.join(file_path,file_name),os.path.join(file_path,file_name.replace('.txt',addSuffix+'.txt')))  #添加后缀
            print('new file name is {0}'.format(file_name.replace('.txt',addSuffix+'.txt')))  #输出添加后缀后的名字

addSuffix_filenames(r'F:\movie', '-test')
  • 3
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值