递归修改文件后缀名

本文介绍如何使用递归的方式来批量修改文件的后缀名,适用于大量文件需要统一更改扩展名的情况。通过编写脚本或者利用特定工具,可以实现对目录及其子目录下所有文件的后缀名进行高效转换。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

import os


def rename(old_name, new_name, now_dir):
    files = os.listdir(now_dir)
    for filename in files:
        portion = os.path.splitext(filename)
        # 分离文件名字和后缀
        print(portion)

        if os.path.isdir(now_dir+'/'+portion[0]):
            print("cd son dir", now_dir+'/'+portion[0])
            rename(old_name, new_name, now_dir+'/'+portion[0])
        else:
            if portion[1] == old_name:  # 根据后缀来修改,如无后缀则空
                newname = portion[0] + new_name
                # 要改的新后缀
                os.rename(now_dir+'/'+filename, now_dir+'/'+newname)


# old_name = input("old name:")
# new_name = input("new name")
# dir = input("dir")
old_name = ".md"
new_name = '.html'
dir = '/home/zz/Desktop/markdown'
rename(old_name, new_name, dir)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值