前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Python实现:批量修改文件名小工具软件

Python实现:批量修改文件名小工具软件

作者头像
你好戴先生
发布2021-10-14 11:46:37
1.2K0
发布2021-10-14 11:46:37
举报
文章被收录于专栏:戴言泛滥戴言泛滥

## 背景

平时我会通过百度网盘分享一些好看的电影和电视剧等视频,但是奈何度娘比较生猛,秉着宁可错杀一千、绝不放过一个的原则,分享的视频链接经常会被和谐,让人很是苦恼

有时候会手动修改电影的扩展名,可以有效避开百度网盘的和谐,但是如果是电视剧,数量有点多,修改起来就比较麻烦了

## 需求

1、可以批量修改当前文件夹下(包括子文件夹)的文件名,在文件扩展名后加上一个“1”

2、可以批量修改当前文件夹下(包括子文件夹)的文件名,去掉文件扩展名最后的“1”

3、不需要搭建任何开发环境,通过简单的双击运行就能实现

## 代码

代码语言:javascript
复制
import os

def rename_add_1(path):
    file_list = os.listdir(path)
    for file in file_list:
        absolute_file = path + "/" + file
        if os.path.isfile(absolute_file):
            if file.endswith(".py") or file.endswith(".exe") or file.endswith(".txt"):
                continue
            old_name = absolute_file
            new_name = old_name + "1"
            os.rename(old_name, new_name)
            print("新文件名:", new_name)
        else:
            # 递归文件夹修改文件名
            rename_add_1(absolute_file)


def rename_sub_1(path):
    file_list = os.listdir(path)
    for file in file_list:
        absolute_file = path + "/" + file
        if os.path.isfile(absolute_file):
            if not file.endswith("1"):
                continue
            old_name = absolute_file
            new_name = old_name.strip('1')
            os.rename(old_name, new_name)
            print("新文件名:", new_name)
        else:
            # 递归文件夹修改文件名
            rename_sub_1(absolute_file)

if __name__ == '__main__':
    # 获取当前程序所在的文件路径
    path = os.getcwd()
    # 给当前路径下的所有文件名后边都+1
    rename_add_1(path)
    # 把当前路径下的所有文件名后边的1去掉
    rename_sub_1(path)

Terminal执行以下命令安装pyinstaller依赖并生成可执行文件

代码语言:javascript
复制
# 安装pyinstaller
pip install pyinstaller

# rename_file.py是python程序的相对路径
# 执行以下命令将在当前路径下生成dist/rename_file.exe可执行文件(Windows环境下)
# mac环境下将生成mac系统的可执行文件
pyinstaller -F rename_file.py

点击阅读原文可下载exe可执行文件以及查看Gitee项目源码

文/戴先生@2021年9月22日

---end---

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-09-22,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 你好戴先生 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档