Python遍历目录并批量更换文件名和目录名的方法


Posted in Python onSeptember 19, 2016

本文实例讲述了Python遍历目录并批量更换文件名和目录名的方法。分享给大家供大家参考,具体如下:

#encoding=utf-8
#author: walker
#date: 2014-03-07
#summary: 深度遍历指定目录,并将子目录和文件名改为小写
#注意,此程序只针对windows,windows下文件(夹)名不区分大小写
import os
import os.path
import shutil
#读入指定目录并转换为绝对路径
rootdir = raw_input('root dir:\n')
rootdir = os.path.abspath(rootdir)
print('absolute root path:\n*** ' + rootdir + ' ***')
#先修改文件名
for parent, dirnames, filenames in os.walk(rootdir):
  for filename in filenames:
    pathfile = os.path.join(parent, filename)
    pathfileLower = os.path.join(parent, filename.lower())
    if pathfile == pathfileLower:  #如果文件名本身就是全小写
      continue
    print(pathfile + ' --> ' + pathfileLower)
    os.rename(pathfile, pathfileLower)
#后修改目录名,这里注意topdown参数。
#topdown决定遍历的顺序,如果topdown为True,则先列举top下的目录,然后是目录的目录,依次类推;
#反之,则先递归列举出最深层的子目录,然后是其兄弟目录,然后父目录。
#我们需要先修改深层的子目录
for parent, dirnames, filenames in os.walk(rootdir, topdown=False):
  for dirname in dirnames:
    pathdir = os.path.join(parent, dirname)
    pathdirLower = os.path.join(parent, dirname.lower())
    if pathdir == pathdirLower: #如果文件夹名本身就是全小写
      continue
    print(pathdir + ' --> ' + pathdirLower)
    os.rename(pathdir, pathdirLower)

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
python基础入门详解(文件输入/输出 内建类型 字典操作使用方法)
Dec 08 Python
python将文本转换成图片输出的方法
Apr 28 Python
在Python中操作字符串之replace()方法的使用
May 19 Python
一篇文章入门Python生态系统(Python新手入门指导)
Dec 11 Python
python自动发邮件库yagmail的示例代码
Feb 23 Python
Python 函数基础知识汇总
Mar 09 Python
使用 Python 实现文件递归遍历的三种方式
Jul 18 Python
python-itchat 统计微信群、好友数量,及原始消息数据的实例
Feb 21 Python
Django错误:TypeError at / 'bool' object is not callable解决
Aug 16 Python
Python使用百度api做人脸对比的方法
Aug 28 Python
Keras在训练期间可视化训练误差和测试误差实例
Jun 16 Python
python利用蒙版抠图(使用PIL.Image和cv2)输出透明背景图
Aug 04 Python
Python实现更改图片尺寸大小的方法(基于Pillow包)
Sep 19 #Python
Python自定义进程池实例分析【生产者、消费者模型问题】
Sep 19 #Python
python安装PIL模块时Unable to find vcvarsall.bat错误的解决方法
Sep 19 #Python
Python操作Access数据库基本步骤分析
Sep 19 #Python
Python自定义主从分布式架构实例分析
Sep 19 #Python
Python实现网络端口转发和重定向的方法
Sep 19 #Python
Python中__init__.py文件的作用详解
Sep 18 #Python
You might like
php中数据的批量导入(csv文件)
2006/10/09 PHP
php下获取客户端ip地址的函数
2010/03/15 PHP
利用PHP实现短域名互转
2013/07/05 PHP
推荐一款MAC OS X 下php集成开发环境mamp
2014/11/08 PHP
php使用iconv中文截断问题的解决方法
2015/02/11 PHP
PHP array_key_exists检查键名或索引是否存在于数组中的实现方法
2016/06/13 PHP
PHP单例模式定义与使用实例详解
2017/02/06 PHP
Aster vs KG BO3 第三场2.19
2021/03/10 DOTA
js同时按下两个方向键
2007/12/01 Javascript
JavaScript数组和循环详解
2015/04/27 Javascript
详解JavaScript中的forEach()方法的使用
2015/06/08 Javascript
AngularJS中如何使用$http对MongoLab数据表进行增删改查
2016/01/23 Javascript
jQuery解决浏览器兼容性问题案例分析
2016/04/15 Javascript
原生js实现class的添加和删除简单代码
2016/07/12 Javascript
jQuery内存泄露解决办法
2016/12/13 Javascript
jquery实现左右轮播图效果
2017/09/28 jQuery
浅谈Webpack自动化构建实践指南
2017/12/18 Javascript
JQuery获取可视区尺寸和文档尺寸及制作悬浮菜单示例
2019/05/14 jQuery
JS实现在线ps功能详解
2019/07/31 Javascript
vue组件库的在线主题编辑器的实现思路
2020/04/03 Javascript
微信小程序仿通讯录功能
2020/04/09 Javascript
Python编程中的反模式实例分析
2014/12/08 Python
python自动翻译实现方法
2016/05/28 Python
python模仿网页版微信发送消息功能
2018/02/24 Python
CentOS7下python3.7.0安装教程
2018/07/30 Python
python opencv鼠标事件实现画框圈定目标获取坐标信息
2020/04/18 Python
Python使用Pyqt5实现简易浏览器(最新版本测试过)
2020/04/27 Python
python 负数取模运算实例
2020/06/03 Python
mac系统下安装pycharm、永久激活、中文汉化详细教程
2020/11/24 Python
英国轻奢珠宝品牌:Astley Clarke
2016/12/18 全球购物
简约控的天堂:The Undone
2016/12/21 全球购物
护理学毕业生自荐信
2013/10/02 职场文书
安全生产月活动总结
2014/05/04 职场文书
2015年学校团委工作总结
2015/05/26 职场文书
《认识年月日》教学反思
2016/02/19 职场文书
MySQL性能指标TPS+QPS+IOPS压测
2022/08/05 MySQL