首页 > 编程语言 >python 批量修改文件名(针对目标文件夹不包括子文件)

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

时间:2022-09-30 11:22:45浏览次数:85  
标签:name 文件名 python 文件夹 file path txt os

存在问题:

如何对文件夹中的文件名进行批量编辑

解决方案:

采用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')

————————————————
版权声明:本文为CSDN博主「coberup」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/coberup/article/details/102587532

标签:name,文件名,python,文件夹,file,path,txt,os
From: https://www.cnblogs.com/vetra/p/16744334.html

相关文章

  • vscode 指定 anaconda创建的python虚拟环境
    1点击左下角的设置。2点击commandpalette。3搜索框输入Python:SelectInterpreter。4选择虚拟环境。......
  • python小技巧
    关于ipython1Tab补全从外观上,IPythonshell和标准的Python解释器只是看起来不同。IPythonshell的进步之一是具备其它IDE和交互计算分析环境都有的tab补全功能。在s......
  • Python 环境管理
    Python环境管理Python版本、虚拟环境、依赖、包管理曾几何时,开发人员的笔记本电脑上只有一个Python版本和一个Python环境,一切运行良好。直到有一天,您需要处理多个项......
  • python 浮点数计算
    FloatingPointMath先贴个代码,有空再写:importdecimalimportfractions#2017096.82/10000print(f"2017096.82/10000=>{2017096.82/10000}")ori=frac......
  • Python实现列表中嵌套字典按照给定key值去重
    需求:对下列数据按任意字段去重需要达到的效果:按照id进行去重,id重复则算重复。重复的取第一个数据。按照name和tel去重,name和tel都重复则算重复。重复的取第一个数据。......
  • Python 创建虚拟环境 Error: Command returned non-zero exit status 101.
    问题:Python创建虚拟环境Error:Commandreturnednon-zeroexitstatus101.试错:1.将python卸载,重新为所有user安装,无效2.将pip进行更新,pipinstall--upgradepip,无......
  • 苹果Mac电脑文件夹路径怎么看?“访达”也能显示文件路径
    Windows系统中,“我的电脑”或“资源管理器”会显示文件/文件夹路径,Mac在“访达”中却不显示,确实不便,也让人费解。连“三指拖移”都是默认不开启,Mac有这类奇怪逻辑就一点也......
  • Python学习笔记5(循环2)
    problem1编写一个程序把输入整数颠倒后存入另一个变量并输出。例如:输入\(1230\),输出\(321\)输入样例:12345输出样例:54321解题思路:就把元组里面元素反转就好了,循环......
  • 借用python的flask库写一个mock实现一个自定义接口服务
    mock在接口测试中可以发挥很大的作用,其中之一便是实现自定义接口服务。python中可以使用flask库实现mock,写一个简单的登录接口,以及调用,直接上代码:第一部分:实现登录接口im......
  • Python实验报告——第4章 序列的应用
    实验报告实例01:输出每日一贴代码如下:importdatetime#导入日期时间类#定义一个时间表mot=['今天星期一:\n坚持下去不是因为我很强,而是因为我别无选择。',......