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中的生成器和yield详细介绍
Jan 09 Python
在SAE上部署Python的Django框架的一些问题汇总
May 30 Python
Python的Django框架中的URL配置与松耦合
Jul 15 Python
Python3中列表list合并的四种方法
Apr 19 Python
如何使用python3获取当前路径及os.path.dirname的使用
Dec 13 Python
Python中zip()函数的解释和可视化(实例详解)
Feb 16 Python
Python 解决火狐浏览器不弹出下载框直接下载的问题
Mar 09 Python
python函数调用,循环,列表复制实例
May 03 Python
python调用摄像头的示例代码
Sep 28 Python
Python 的 f-string 可以连接字符串与数字的原因解析
Feb 20 Python
详解Python中的进程和线程
Jun 23 Python
PYTHON 使用 Pandas 删除某列指定值所在的行
Apr 28 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
Win2003服务器安全加固设置--进一步提高服务器安全性
2007/05/23 PHP
PHP 源代码压缩小工具
2009/12/22 PHP
php实现按指定大小等比缩放生成上传图片缩略图的方法
2014/12/15 PHP
php+xml编程之SimpleXML的应用实例
2015/01/24 PHP
基于JQuery+PHP编写砸金蛋中奖程序
2015/09/08 PHP
ThinkPHP打水印及设置水印位置的方法
2016/10/14 PHP
PHP判断密码强度的方法详解
2017/05/26 PHP
Thinkphp自定义生成缩略图尺寸的方法
2019/08/05 PHP
JavaScript弹出新窗口并控制窗口移动到指定位置的方法
2015/04/06 Javascript
JQUERY简单按钮轮换选中效果实现方法
2015/05/07 Javascript
JS实现下拉菜单赋值到文本框的方法
2015/08/18 Javascript
6种javascript显示当前系统时间代码
2015/12/01 Javascript
前端jquery部分很精彩
2016/05/03 Javascript
jQuery 调用WebService 实例讲解
2016/06/28 Javascript
BootStrap注意事项小结(五)表单
2017/03/10 Javascript
基于jQuery实现的设置文本区域的光标位置
2018/06/15 jQuery
浅谈针对Vue相同路由不同参数的刷新问题
2018/09/29 Javascript
微信小程序实现动态显示和隐藏某个控件功能示例
2018/12/14 Javascript
微信小程序使用wxParse解析html的方法示例
2019/01/17 Javascript
vue权限问题的完美解决方案
2019/05/08 Javascript
python基于pyDes库实现des加密的方法
2017/04/29 Python
Python实现购物程序思路及代码
2017/07/24 Python
Python基于贪心算法解决背包问题示例
2017/11/27 Python
python3+PyQt5实现自定义流体混合窗口部件
2018/04/24 Python
python将一个英文语句以单词为单位逆序排放的方法
2018/12/20 Python
python通过paramiko复制远程文件及文件目录到本地
2019/04/30 Python
解决python tkinter界面卡死的问题
2019/07/17 Python
使用django实现一个代码发布系统
2019/07/18 Python
python保留小数位的三种实现方法
2020/01/07 Python
解决Keras 与 Tensorflow 版本之间的兼容性问题
2020/02/07 Python
请假条怎么写
2014/04/10 职场文书
住房租房协议书
2014/08/20 职场文书
医生党的群众路线教育实践活动个人对照检查材料
2014/09/23 职场文书
大学生就业协议书范本(适用于公司企业)
2014/10/07 职场文书
考生诚信考试承诺书
2015/04/29 职场文书
Go标准容器之Ring的使用说明
2021/05/05 Golang