Python实现乱序文件重新命名编号

 更新时间:2022年08月03日 10:13:08   作者:朱小五  
这篇文章主要为大家详细介绍一下Python的一个神操作,那就是实现乱序文件重新命名编号功能,文中的示例代码讲解详细,感兴趣的可以尝试一下

人生苦短,快学Python!

最近有位读者朋友遇到了一个小问题,私聊找小五答疑。感觉也会有其他同学会遇到,所以干脆分享出来。

如下图所示,在本地文件夹中有这样一堆视频文件,在这种情况下并不是乱序的。

但是将其上传到网盘中后,就会经常变成乱序。即它们会按照1、10、11、2、20这样排序,并不方便我们按顺序去依次观看。

所以我们希望能够给它们在本地重新命名编号,比如可以按照001、002、003···、020这样排序,就可以避免上面这种尴尬的情况了。

在Python中,os模块可以用来自动处理各种文件和目录,比如复制、移动、重命名和删除等操作。

获取文件列表

在交互式环境中输入如下命令:

import os
path =  os.getcwd()
filenames = os.listdir(path)
filenames

输出:

os模块中的getcwd()函数,使用它可以获取当前工作目录。os模块中的listdir()函数,可以返回工作目录中的所有文件和子目录。通过这两个函数,我们就获取了当前工作目录下的所有文件。

筛选视频文件

在交互式环境中输入如下命令:

file_mp4s = [i for i in filenames if i.split(".")[-1] == "mp4"]
file_mp4s

输出:

这一步骤,是用来筛选文件列表中的所有mp4文件。用循环+条件太繁琐,而列表生成式则可以用一行语句得到视频文件。

批量重命名

在交互式环境中输入如下命令:

for i in file_mp4s:
   new_name = i.split("-")[0].zfill(3) + "-" + i.split("-")[1]
   os.rename(i,new_name)

输出:

os模块中的rename()函数,使用它可以重命名文件。

这里还用到一个字符串函数zfill(),它会返回指定长度的字符串,原字符串右对齐,前面填充0。所以"1".zfill(3)的话,会返回'001'。

这样,我们就实现了乱序文件的重新命名编号

到此这篇关于Python实现乱序文件重新命名编号的文章就介绍到这了,更多相关Python乱序文件重命名内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 如何使用python批量修改文本文件编码格式

    如何使用python批量修改文本文件编码格式

    把文本文件的编码格式进行批量幻化,比如ascii, gb2312, utf8等,相互转化,字符集的大小来看,utf8>gb2312>ascii,因此最好把gb2312转为utf8,否则容易出现乱码,这篇文章主要介绍了如何使用python批量修改文本文件编码格式,需要的朋友可以参考下
    2023-03-03
  • python利用proxybroker构建爬虫免费IP代理池的实现

    python利用proxybroker构建爬虫免费IP代理池的实现

    这篇文章主要介绍了python利用proxybroker构建爬虫免费IP代理池,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-02-02
  • Python supervisor强大的进程管理工具的使用

    Python supervisor强大的进程管理工具的使用

    这篇文章主要介绍了Python supervisor强大的进程管理工具的使用,本文主要跟大家分享在类unix操作系统下supervisor的使用以及一些关于进程的知识,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-04-04
  • Python实现手势识别

    Python实现手势识别

    这篇文章主要介绍了Python如何实现手指指尖的检测,并且可以在windows系统下通过判断手指数目,来模拟键盘操作,感兴趣的朋友可以了解下
    2020-10-10
  • pyinstaller打包单文件时--uac-admin选项不起作用怎么办

    pyinstaller打包单文件时--uac-admin选项不起作用怎么办

    这篇文章主要介绍了pyinstaller打包单文件时--uac-admin选项不起作用怎么办,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-04-04
  • Python恋爱小助手之必拿下

    Python恋爱小助手之必拿下

    小编有个好兄弟最近在追妹子,跟妹子打得火热!就差临门一脚了,这一jio我帮忙补上去了!他问有没有什么酷炫的表白方式,想要一次成功,表白的方式有许多种今天小编来给大家带来两个不得不同意的表白代码
    2021-10-10
  • 如何将Python代码转化为可执行的程序

    如何将Python代码转化为可执行的程序

    在Python中,将代码转成可以执行的程序需要安装库pyinstaller,如果是Windows用户,打开Anaconda Prompt输入相对应代码,下面小编给大家详细讲解如何将Python代码转化为可执行的程序,感兴趣的朋友一起看看吧
    2024-03-03
  • Python淘宝或京东等秒杀抢购脚本实现(秒杀脚本)

    Python淘宝或京东等秒杀抢购脚本实现(秒杀脚本)

    本篇文章主要介绍了Python 通过selenium实现毫秒级自动抢购的示例代码,通过扫码登录即可自动完成一系列操作,抢购时间精确至毫秒,可抢加购物车等待时间结算的,也可以抢聚划算、火车票等的商品,感兴趣的朋友跟随小编一起看看吧
    2022-10-10
  • Python3如何使用tabulate打印数据

    Python3如何使用tabulate打印数据

    这篇文章主要介绍了Python3如何使用tabulate打印数据,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-09-09
  • Pycharm连接gitlab实现过程图解

    Pycharm连接gitlab实现过程图解

    这篇文章主要介绍了Pycharm连接gitlab实现过程图解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-09-09

最新评论