现在的位置: 首页 > 综合 > 正文

修改文件名和文件夹名(python)

2013年05月28日 ⁄ 综合 ⁄ 共 994字 ⁄ 字号 评论关闭

最近看在《HTML5与CSS3权威指南》,在华章网上将其配套源代码下了下来,悲剧的是文件夹,文件名均为乱码。估计作者是在windows下写的该代码,windows下的默认编码是gbk,而我的是ubuntu,默认编码是utf-8,因此中文全是乱码就不足为奇了。该图显示了改变之前的情况:

前面的是乱码部分,现在我想将前面的乱码部分去掉,比如将第一个文件夹重命名为"18-2"。这里用到了python的三个模块os、os.path以及re。os除了能够对进程及进程运行环境进行管理外,还负责大部分的文件系统操作,比如进入某文件目录,打开某文件等;os.path主要负责路径方面的,比如某文件的基路径,文件名等;而re则负责正则表达式。下面为代码:

 

对代码做一下说明,首先for循环遍历每一个文件(夹),如果是文件夹,则递归调用modify()函数;如果是文件则直接通过正则表达式匹配来修改文件的名称。当遍历完一个文件夹的所有内容时,进入到该文件夹的上一层目录,然后根据正则表达式来修改该文件夹的名称。最终效果是总文件中的所有文件及文件夹的名称均改变了。

终端执行:

最终效果为:

仅以此文记录一下。

抱歉!评论已关闭.