利用Python批量重命名一系列文件名杂乱的文件
假设目录下面有这样一系列命令杂乱的文件:
OPENFOAM -TRAINING- PART- #1.pdf
OPENFOAM - TRAINING- PART- #2.pdf
OPENFOAM- TRAINING- PART-#3 .pdf
不仅序号被放在最后,而且还有许多多余的空格。现在批量将这些文件重命名,去掉#
,并把序号挪到最前面。
import os
os.chdir('/Users/<>/python_learn/openfoam') # 把当前工作目录切换到需要进行操作的目录
for f in os.listdir():
f_name, f_ext = os.path.splitext(f) # 把文件名和扩展名分开
f_title, f_training, f_part, f_num = (f_name.split('-')) # 以`-`为分隔把文件名分解
f_title = f_title.strip() # 去掉多余的空格
f_training = f_training.strip() # 去掉多余的空格
f_part = f_part.strip() # 去掉多余的空格
f_num = f_num.strip()[1:].zfill(2) # 去掉多余的空格、去掉`#`号、非两位数自动补0(1变01)
new_name = '{}-{}-{}-{}{}'.format(f_num, f_title, f_training, f_part, f_ext) # 新文件名的格式
os.rename(f, new_name) # 按新文件名重命名这些文件
利用Python批量重命名一系列文件名杂乱的文件的更多相关文章
- 利用Python批量重命名文件夹下文件
#!/usr/bin/python # -*- coding: UTF-8 -*- # -*- coding:utf8 -*- import os from string import digits ...
- Ubuntu中利用rename批量重命名
1.简介: 通常在机器视觉的学习过程中,需要批量处理一些图片,通常会涉及到批量重命名的问题,可以利用rename命令快速实现图片的批量重命名 2.rename命令格式: rename [-v] [-n ...
- Python批量重命名 工具贴(一)
说明 由于在处理图片数据和其他数据时,经常需要对数据进行批量重命名操作,每次使用时都需要重写,非常不便,因此记录下重命名代码方便后续使用. 文件结构说明 参数说明: path为输入路径 image_t ...
- python批量重命名【截取文件名前六个字符 】
#!/usr/bin/python # -*- coding: UTF-8 -*- import os, sys # 打开文件 path = "/home/landv/Desktop/l/& ...
- python --批量重命名文件名
# -*- coding: utf-8 -*- import os path = "d:\\curl\data\\" for file in os.listdir(path): p ...
- [经典] 使用Python批量重命名iPhone拍摄的照片-按照拍摄时间重命名
#!/usr/bin/env python # -*- coding: utf-8 -*- ''' 批量修改照片文件名称的Python脚本程序. 遍历指定目录(含子目录)的照片文件,根据拍照时间将照片 ...
- Python批量重命名文件
批量替换文件名中重复字符: # -*- coding: UTF-8 -*- import os path = raw_input("请输入文件夹路径:") oldname = ra ...
- Python批量重命名
某无聊的下午的一个小需求 import os dirPath = r'' #路径 format = r'' #后缀 name = 0 for file in os.listdir(dirPath): ...
- python 批量重命名文件后缀
# batch_file_rename.py # Created: 6th August 2012 ''' This will batch rename a group of files in a g ...
随机推荐
- 【Flutter学习】之DateTime日期转换
概述: 表示一个时间点 通过构造函数或解析格式化的字符串创建DateTime对象,并且符合ISO 8601标准的子集,小时是24小时制,范围在0-23之间 DateTime对象创建之后,将是固定不变的 ...
- Table 'jiang.hibernate_sequence' doesn't exist
spring+struts2+hibernate 运行报错 Table 'jiang.hibernate_sequence' doesn't exist 解决方法 一. 在hibernate.cfg. ...
- 用idea将本地项目提交到gitlab上
提交的前提是你必须有gitlab的地址 以下是将本地代码提交到gitlab上 在idea的菜单项选择 VCS>Import into Version Control>Create Git ...
- 人生苦短_我用Python_list(列表)_002
# coding=utf-8 # 列表 list 列表函数 # 列表的特性: 可以有任何类型的值 可以更改 # 可以更改.增加.删除.修改 # 增加 append 直接在尾巴增加 list_1 = [ ...
- MariaDB Where子句
WHERE 子句过滤各种语句,如SELECT,UPDATE,DELETE和INSERT. 他们提出了用于指定行动的标准. 它们通常出现在语句中的表名后面,其条件如下. WHERE子句本质上像一个if语 ...
- Python--基础之socket编程
一 客户端/服务器架构 即C/S架构,包括 1.硬件C/S架构(打印机) 2.软件C/S架构(web服务) 美好的愿望: 最常用的软件服务器是 Web 服务器.一台机器里放一些网页或 Web 应用程序 ...
- python--生成器、三元表达式、列表解析、生成器表达式
补充: 在文件开头声明一个空字典,然后在每个函数前加上装饰器,完成自动添加到字典的操作 func_dic={} def make_dic(key): def deco(func): func_dic[ ...
- QT blockingmaster例子学习
dialog.h: #ifndef DIALOG_H #define DIALOG_H #include <QDialog> #include "masterthread.h&q ...
- SQL语句之-计算字段/分组
五.计算字段 1.拼接字段 MySQL:使用函数concat SqlServer:使用加号+ oracle:使用|| SELECT CONCAT(vend_name,'(',vend_country, ...
- VIEW当中自定义属性的使用
主要有三种方法可以实现自定义属性. 第一种方法,直接设置属性值,通过attrs.getAttributeResourceValue拿到这个属性值. (1)在xml文件中设置属性值 [html] vie ...