批量更改文件名中的一部分|python

最近遇到了一个需求,就是把批量文件名中的一部分给更改了,用python实现

# !/usr/bin/env python
# -*- coding: utf-8 -*-

import re
import os

path = "D:\document"  # 输入你要更改文件的目录 注意最后没有\

originalname = '1234'  # 1234是要查找文件名里包含123的文件
replacename = '4321'  # 4321是要被替换的字符串,如果就是删除originalname,那么replacename = ''就可以


def main1(path1):
    files = os.listdir(path1)  # 得到文件夹下的所有文件名称
    for file in files:  # 遍历文件夹
        if os.path.isdir(path1 + '\\' + file):
            main1(path1 + '\\' + file)
        else:
            files2 = os.listdir(path1 + '\\')
            for file1 in files2:
                if originalname in file1:
                    n = str(path1 + '\\' + file1.replace(originalname, replacename))
                    n1 = str(path1 + '\\' + str(file1))
                    try:
                        os.rename(n1, n)
                    except IOError:
                        continue


main1(path)

Logo

CSDN联合极客时间,共同打造面向开发者的精品内容学习社区,助力成长!

更多推荐