栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

python脚本批量修改文件名

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

python脚本批量修改文件名

我曾以为,写脚本是很难的,直到我遇到了Python

前言随着国内版权意识的跟进,很多影视音乐资源开始收费,而且度盘又经常随意封杀各种资源,所以,为了保护资源,老司机们越来越倾向于把资源下载到本地,但随着本地资源量的增多,资源管理就成了一件比较头疼的事情;对于资源的管理,方法有很多,我比较喜欢为资源起一个好记的名字,但改文件名是一件无聊又耗时的事情,所以,一个批量重命名的脚本就变得非常重要.1.批量添加前缀功能

批量重命名

批量重命名逻辑,分三步:(1)确定需要命名的文件们(2)确定新的文件名(3)改名

逻辑理清,编码就变得很简单了

10行代码

上图源码:

# 导入python内置的os模块和sys模块import osimport sys# 程序入口if __name__ == "__main__":    # 获取需要添加的前缀
    pre = input("请输入需要添加的前缀:")    # 为了美观,为前缀添加一个中括号
    mark = "[%s]"%pre    # 获取本目录下所有的文件名
    old_names = os.listdir()    # 遍历目录下的文件名
    for old_name in old_names:        # 跳过本脚本文件
        if old_name != sys.argv[0]:            # 用新的文件名替换旧的文件名
            os.rename(old_name, mark+old_name)
2.(扩展)添加移除前缀功能:

上面的10行程序,只能批量增加前缀,不能批量移除,不太完善,这是增加了移除前缀功能的源码

添加/移除

上图源码:

import osimport reimport sysdef add_mark():
    pre = input("请输入需要添加的前缀:")
    mark = "[%s]"%pre
    old_names= os.listdir()    for old_name in old_names:        if old_name != sys.argv[0]:
            os.rename(old_name, mark+old_name)def remove_mark():
    old_names= os.listdir()    for old_name in old_names:        try:
            result = re.match(r"(^[.*])(.*)", old_name).group(2)
            rm = old_name            if result:
                os.rename(old_name, result)
            print("已为%s移除前缀"%rm)        except Exception as e:            passdef main():
    while True:
        option = int(input("请选择功能数值:n1.添加前缀n2.删除前缀n3.退出程序n"))        if option == 1:
            add_mark()        elif option == 2:
            remove_mark()        else:
            exit()if __name__ == "__main__":
    main(

后记:
python是一门简洁强大的语言,随着人工智能的兴起,python也会变得越来越受人们的重视,你有什么理由不爱上python呢?



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/221915.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号