批量修改文件名,把文件名中的汉字自动替换成其首字母

在平时的工作中,当我们面对几百上千的文件时,想要按照某一规则修改其文件名,手动改肯定不人性化,下面这个程序可以根据工作者需要,稍作修改,可以完成不同要求的文件名批量修改任务,本博文是在笔者工作过程中遇到这样的需求写的,本博文实现的主要功能是把文件名中的汉字自动替换成其首字母,其他不变。如果有其他要求,把代码稍作修改,相信也可以实现。如图:                                                                                               

     

把左图的文件名改成右图所示

下面是代码       

  

import os;
import pypinyin
from pypinyin import pinyin, lazy_pinyin

def rename():

  path=u"E://文件夹路径";

  filelist=os.listdir(path)#该文件夹下所有的文件(包括文件夹)

  for files in filelist:#遍历所有文件

    Olddir=os.path.join(path,files);#原来的文件路径

    if os.path.isdir(Olddir):#如果是文件夹则跳过

      continue;

    filename=os.path.splitext(files)[0]; #获取文件名
    #把文件名里的汉字转换成其首字母
    filename1 = pinyin(filename, style=pypinyin.FIRST_LETTER) 
    #创建一个空列表
    filename2 = []
    for ch in filename1:
      filename2.extend(ch)
    #把列表转换成没有间隔的字符串,因为文件名要以字符串形式存在
    filenameToStr = ''.join(filename2)

    filetype=os.path.splitext(files)[1];#文件扩展名

    Newdir=os.path.join(path,filenameToStr + filetype);#新的文件名

    os.rename(Olddir,Newdir);#重命名

rename();

                                                                      





  • 4
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值