python批量修改文件名的示例
作者:chuyaoxin 发布时间:2023-11-04 13:50:39
标签:python,批量,修改,文件名
今天中午看了一集动漫《进击的巨人》,看完后发现这些视频的名称有点乱,于是编程来批量重命名。
重命名之前的各名称格式为——飞极速【www.feijisu.com】[16][720P][CHS-JAP] AVC.mp4,可以看到这个中间是有集数的,因此可以使用正则表达式提取,导入re模块。
然后由于要修改文件名,需要用到os模块。
os.listdir(path)
上面这行代码可以将路径path中所有的文件的名称放入一个列表中。
os.path.abspath(name)
这行代码可以得到名为name的文件的绝对路径
os.chdir(path)
这个是将工作目录修改为path
os.rename(src,dst)
将文件或者目录名称src改为dst
# -*- coding = utf-8 -*-
# @time:2020/6/26/026 14:02
# Author:cyx
# @File:文件批量重命名.py
# @Software:PyCharm
import os
import re
path = 'E://娱乐//动漫//进击的巨人第一季//201304 18116 进01'
name_list = os.listdir(path)
print(name_list)
for name in name_list:
os.chdir(path)
file_name = os.path.abspath(name)
src =file_name
print(name)
dst = re.search('[\d*-]+',name).group() + '.mp4' # 中间的这个-是因为有一个13-2集
print(dst)
try:
os.rename(src,dst)
except:
continue
来源:https://www.cnblogs.com/cyx-b/p/13195244.html
0
投稿
猜你喜欢
- 便携文档格式 (PDF) 是由 Adobe 开发的格式,主要用于呈现可打印的文档,其中包含有 pixel-perfect 格式,嵌入字体以及
- 测试需求 为了更好的测试你的ASP程序,你首先需要决定你的程序将来需要面对多大的压力。简单的说,压力或负载可以分解成以下数字:· 最低用户数
- 求3721,163,1,4832,1980,2008,68686688,9999,17173,5173,8848中最大的数明白后,试着求一下
- 环境:Ubuntu14.04,tensorflow=1.4(bazel源码安装),Anaconda python=3.6声明变量主要有两种方
- 建立一个数据库表维护规范在一个定期基础而非等到问题出现才实施数据库表的检查是一个好主意。应该考虑到建立一个预防性维护的时间表,以协助自动问题
- 代码如下: <% Dim oConn, ors, aRows Dim i,j Set oConn=Server.CreateObjec
- 昨天十行代码实现文字识别,感觉怎样,是不是很爽今天咋们继续利用pillow和pytesseract来实现验证码的识别一、环境配置需要 pil
- 安装python虚拟环境核心目的就是为了复制一个python环境,这样新项目下载的所有包,都会存放在虚拟环境下的python site-pa
- 0. 前言本节中,我们使用策略梯度算法解决 CartPole 问题。虽然在这个简单问题中,使用随机搜索策略和爬山算法就足
- # coding=utf-8 from BeautifulSoup import BeautifulSoup, Tag, Navigable
- 一旦被黑客获取到webshell,黑客就知道了你的sqlserver管理员密码,如果sqlserver再没有经过安全设置那么黑客很容易就提权
- 1. 上下文管理器是什么?举个例子,你在写Python代码的时候经常将一系列操作放在一个语句块中:(1)当某条件为真 – 执行这个语句块(2
- 昨天我的电影网站在生成内容静态页面的时候出了问题,提示下标越界,以前从来没有遇到过的,所以根本不知道是什么东西,于是就到处在网上找答案,但是
- 题记:毕业一年多天天coding,好久没写paper了。在这动荡的日子里,也希望写点东西让自己静一静。恰好前段时间用python做了一点时间
- 网页采用了 UTF-8 编码格式,这本来没有问题,问题是外部 CSS 文件默认是 ANSI
- 运用webbrowser库中的一个函数实现自动打开浏览器:webbrowser.open(http://blog.csdn.net/ares
- 前言:在使用DDT数据驱动+HTMLTestRunner输出测试报告时遇到过2个问题:1、生成的测试报告中,用例名称后有dict() -&g
- 一、安装一个基于Python的强大的信号库,它既支持简单的对象到对象通信,也支持针对多个对象进行组播支持注册全局命名信号,支持自定义命名信号
- 二维矩阵的transpose函数:不晓得该怎么起头,直接上干货。transpose()简单来说,就相当于数学中的转置,在矩阵中,转置就是把行
- 在日常工作中,我们常常会用到需要周期性执行的任务,一种方式是采用 Linux 系统自带的 crond 结合命令行实现,另外一种方式是直接使用