Python 文件夹批量重命名

目录

  • Python 文件夹批量重命名
    • 方法一(os.listdir):
      • 1. 加前缀/后缀
      • 2. 替换重命名
    • 方法二(os.walk):
      • 1. 加前缀/后缀
      • 2. 替换重命名

方法一(os.listdir):

使用此种方法会将父文件夹下的所有文件(无论文件还是文件夹)一起重命名,再下一级的文件不受影响。

1. 加前缀/后缀

比如,我们需要在Test2文件夹下,将子文件(无论文件还是文件夹)批量加上前缀“test-”。


运行成功会有提示(我这里用的是VSCode,大家也可以用其他工具):

就可以看到子文件都已经加上前缀了:

python代码如下:

import os,sys                       #导入模块
def add_prefix_subfolders():        #定义函数名称mark = 'test-'                  #准备添加的前缀内容old_names = os.listdir( path )  #取路径下的文件名,生成列表for old_name in old_names:      #遍历列表下的文件名if old_name!= sys.argv[0]:     #代码本身文件路径,防止脚本文件放在path路径下时,被一起重命名os.rename(os.path.join(path,old_name),os.path.join(path,mark+old_name))  #子文件夹重命名print (old_name,"has been renamed successfully! New name is: ",mark+old_name)if __name__ == '__main__': path = r'E:\我的学习\编程\Python\PythonTest2\Test2'   #运行程序前,记得修改主文件夹路径!add_prefix_subfolders()            #调用定义的函数

加后缀一样的道理,在os.rename那里,把mark+old_name换成old_name+mark。
自己使用时记得一要修改路径,二要修改前缀/后缀的内容。

2. 替换重命名

如果要把文件名从test替换为test2

运行后的结果提示:
子文件/文件夹就被重命名成功了

python代码如下:

import os,sys                       #导入模块
def rename_subfolders():        #定义函数名称old_names = os.listdir( path )  #取路径下的文件名,生成列表for old_name in old_names:      #遍历列表下的文件名if old_name!= sys.argv[0]:     #代码本身文件路径,防止脚本文件放在path路径下时,被一起重命名new_name=old_name.replace('test-','test2-')   #将原来名字里的‘test’替换为‘test2’os.rename(os.path.join(path,old_name),os.path.join(path,new_name))  #子文件夹重命名print (old_name,"has been renamed successfully! New name is: ",new_name)   #输出提示if __name__ == '__main__': path = r'E:\我的学习\编程\Python\PythonTest2\Test2'   #运行程序前,记得修改主文件夹路径!rename_subfolders()          #调用定义的函数,注意名称与定义的函数名一致

同样,记得修改路径,需要替换的内容

方法二(os.walk):

在os.walk的方法下,可以从父文件夹路径下,只取得子文件夹进行操作。适用于父文件夹下同时存在子文件夹和子文件,但只想对子文件夹进行重命名操作的情况。

1. 加前缀/后缀

比如,我们需要在Test2文件夹下,将只针对子文件夹批量加上前缀“test-”。

运行成功后有提示几个文件夹已经被重命名:

可以看到这里只有子文件夹被重命名了,txt文件未受影响:

python 代码如下:

import os,sys                       #导入模块
def add_prefix_subfolders():        #定义函数名称mark = 'test-'                  #准备添加的前缀内容for foldName, subfolders, filenames in os.walk(path):     #用os.walk方法取得path路径下的文件夹路径,子文件夹名,所有文件名for subfolder in subfolders:     #遍历列表下的子文件夹名os.rename(os.path.join(foldName,subfolder),os.path.join(path,mark+subfolder))  #子文件夹重命名print (subfolder,"has been renamed successfully! New name is: ",mark+subfolder)   #输出提示if __name__ == '__main__': path = r'E:\我的学习\编程\Python\PythonTest2\Test2'   #运行程序前,记得修改主文件夹路径!add_prefix_subfolders()          #调用定义的函数,注意名称与定义的函数名一致

加后缀一样的道理,在os.rename那里,把mark+old_name换成old_name+mark。
自己使用时记得一要修改路径,二要修改前缀/后缀的内容。

2. 替换重命名

如果要把文件名从test替换为test2
运行成功会会有提示,几个子文件夹已经被重命名:
看到只有子文件夹被重命名成功:

python 代码如下:

import os,sys                       #导入模块
def rename_subfolders():        #定义函数名称for foldName, subfolders, filenames in os.walk(path):     #用os.walk方法取得path路径下的文件夹路径,子文件夹名,所有文件名for subfolder in subfolders:     #遍历列表下的子文件夹名new_name=subfolder.replace('test-','test2-')   #将原来名字里的‘test’替换为‘test2’os.rename(os.path.join(foldName,subfolder),os.path.join(path,new_name))  #子文件夹重命名print (subfolder,"has been renamed successfully! New name is: ",new_name)   #输出提示if __name__ == '__main__': path = r'E:\我的学习\编程\Python\PythonTest2\Test2'   #运行程序前,记得修改主文件夹路径!rename_subfolders()          #调用定义的函数,注意名称与定义的函数名一致

同样,记得修改路径,需要替换的内容

Python 文件夹重命名的两种方法相关推荐

  1. c语言批量重命图片,图片文件批量重命名的3种方法

    1. 简单重命名,资源管理器 如下,是从数码相机里倒进来的照片,名称是相机自己命名的. 这些照片全是宝贝4岁4月的,我想命名为0404XXX,XXXX为顺序号. 选中所有需要重命名的文件,在第一个(切 ...

  2. 批量重命名,文件夹重命名的五种方式分享

    在工作中会需要修改大量文件夹名称,有些小伙伴不知道如何批量修改,就只能手动一个一个去修改,这种方法是速度最慢的方法,需要消耗大量的时间,小编分享一个批量重命名的方法,一起来看看吧! 第一步,运行[文件 ...

  3. 解决 win10 新建文件夹重命名卡死的另一种方法

    遇到 win10 新建文件夹重命名卡死时 根据网上的各种方法都不起作用时可以试一下这个方法. 文件夹属性 --- 自定义 --- 你想要那种文件夹 优化此文件夹 --- 把 [视频] 改成 [常规项目 ...

  4. linux命令--文件夹重命名

    Linux文件重命名有两种方式:mv和rename 一.mv mv srcFile destFile mv一次只能重命名一个文件,而且,它是移动命令.如果destFile已经存在的话,会直接装原文件覆 ...

  5. 本地账户用户文件夹重命名

    本地账户用户文件夹重命名 前提说明:这么做有个 bug -- 任务管理器 → 用户 下显示的名称还是最原始的用户名 在最后有解决办法!!!** 建议:手机查看文档,电脑操作!!!!!!!!!! 进入管 ...

  6. python获取绝对路径_python3中获取文件当前绝对路径的两种方法

    方法1: import sys print(sys.argv) 得到文件当前绝对路径字符串的一个列表 ['D:/pycharm/PracticeProject/ClientServerNetworki ...

  7. php文件夹重命名,PHP重命名和移动目录

    PHP重命名目录 使用PHP的rename()函数可以重命名目录. 如果rename()函数执行成功,则返回true,否则返回false. 复制代码 PHP重命名目录示例-www.baike369.c ...

  8. 如何将多个文件夹重命名

    当你有很多同项目的文件夹需要整理打包给甲方,但是文件夹的名称由于当时没有统一命名,非常的杂乱不好查阅.这种情况很多时候就出现在项目中后期,那如何将多个文件夹重命名的又快又便捷呢?通过多年的职场工作经验 ...

  9. mac文件夹怎么重命名?苹果电脑文件夹重命名快捷键

    windows系统下给文件夹重命名相信很多朋友都很熟悉,那么Mac OS系统怎么给文件重命名呢,相信很多刚刚入手Mac OS系统的亲们都会有次疑问,下面小编告诉你Mac OS系统的文件夹到底要怎样才能 ...

最新文章

  1. matlab数字量转电气量,基于MATLAB的数字PID直流电机调速系统.doc
  2. 腾讯阿里是否开始走向没落,用新互联网大脑模型分析
  3. Angular使用mathjs
  4. python编写的程序大全_Python开发技术大全
  5. 5分钟实现动态切换,原来迁徙图还可以这么玩!
  6. Linux 交换内存空间原理(swap)(Linux内存管理)(cgroups)
  7. Zookeeper在Kafka中的作用
  8. hexo部署云服务器的全过程
  9. 腾讯基于 Flink SQL 的功能扩展与深度优化实践
  10. Asp.Net Core WebAPI使用Swagger时API隐藏与分组
  11. Python----面向对象---自定义元类控制类的实例化行为的应用
  12. 企业网络之间资源互访
  13. 微软公司将在英国开设三个数据中心
  14. Ubuntu16.04 下convert 命令 将eps转tif,jpg,png,pdf格式
  15. tornado异步客户端(Future)
  16. VSCode打开底部状态栏
  17. Android studio快捷键大全 和 eclipse对照(原)
  18. PyTorch学习笔记(六):PyTorch进阶训练技巧
  19. 自己动手写网络爬虫(第一天)
  20. 新手入门:Javascript的使用技巧大全(二)

热门文章

  1. Vue3 生命周期钩子函数
  2. JVM原理及性能调优
  3. 驾照换证需要哪些手续呢
  4. 生命科学50讲 | 生命·智能 | 笔记和点评
  5. Python自定义钉钉机器人发送自动化结果报告
  6. 南昌大学 计算机面试题,南昌大学计算机应用技术专业调剂生复试经验
  7. java 百度poi_百度poi接口 查询餐饮、住宿、娱乐等POI数据
  8. 轻松搭建自己的Ngrok服务器
  9. linux下---大于2G的文件解压安装7za
  10. 单相桥式整流电容滤波及稳态时的波形分析