zoukankan      html  css  js  c++  java
  • python批量文件重命名

    import os
    import re
    
    rootdir= r'D:\rizhi\gp-2012-11'
    pat = re.compile(r'google.*?(\d{8}).*?\.txt')
    
    for n in os.listdir(rootdir):
        match = pat.match(n)
        if match:
            oldname = os.path.join(rootdir, n)
            newname = os.path.join(rootdir, ('gp' + match.group(1) + '.txt'))
            os.rename(oldname, newname)
            print newname
        else:
            print 'no'

    做了python文件批量重命名的工具,使用正则对文件名进行匹配,如果匹配则修改文件名。

    在这里发现了2个问题:

    1、使用os.rename的时候需要用完整路径,这是就用到了os.path.join(root, filename),如果只用文件名是无法重命名的。

    2、使用正则的时候,用match可匹配到括号中的字符,但需要使用match.group(1)才能使用,如果只是match.group()则会显示全部。

  • 相关阅读:
    Java 学习资料
    01 html5
    vscode 插件推荐
    08 css高级
    07 css定位
    06 css布局浮动
    05 css盒子
    04 css复合选择器 标签 行高
    03 css字体样式
    02 css基础选择器
  • 原文地址:https://www.cnblogs.com/alexkh/p/2943933.html
Copyright © 2011-2022 走看看