文件改后缀名有哪些方法(批量修改文件后缀名)

路丁网 2020年3月21日09:19:30创业新闻评论46字数 1378阅读4分35秒阅读模式
title: 批量修改文件后缀tags: argparse,IO

批量修改文件后缀

本例子使用Python的os模块和 argparse模块,将工作目录work_dir下所有后缀名为old_ext的文件修改为后缀名为new_ext

通过本例子,大家将会大概清楚argparse模块的主要用法。

导入模块

import argparseimport os

定义脚本参数

def get_parser(): parser = argparse.ArgumentParser( description='工作目录中文件后缀名修改') parser.add_argument('work_dir', metavar='WORK_DIR', type=str, nargs=1, help='修改后缀名的文件目录') parser.add_argument('old_ext', metavar='OLD_EXT', type=str, nargs=1, help='原来的后缀') parser.add_argument('new_ext', metavar='NEW_EXT', type=str, nargs=1, help='新的后缀') return parser

后缀名批量修改

def batch_rename(work_dir, old_ext, new_ext): """ 传递当前目录,原来后缀名,新的后缀名后,批量重命名后缀 """ for filename in os.listdir(work_dir): # 获取得到文件后缀 split_file = os.path.splitext(filename) file_ext = split_file[1] # 定位后缀名为old_ext 的文件 if old_ext == file_ext: # 修改后文件的完整名称 newfile = split_file[0] + new_ext # 实现重命名操作 os.rename( os.path.join(work_dir, filename), os.path.join(work_dir, newfile) ) print("完成重命名") print(os.listdir(work_dir))

实现Main

def main(): """ main函数 """ # 命令行参数 parser = get_parser() args = vars(parser.parse_args()) # 从命令行参数中依次解析出参数 work_dir = args['work_dir'][0] old_ext = args['old_ext'][0] if old_ext[0] != '.': old_ext = '.' + old_ext new_ext = args['new_ext'][0] if new_ext[0] != '.': new_ext = '.' + new_ext​ batch_rename(work_dir, old_ext, new_ext)

点击下方链接,关注【Python与算法社区】一键获取273篇原创学习笔记

文件改后缀名有哪些方法(批量修改文件后缀名)

  • 本文由 发表于 2020年3月21日09:19:30
第二个地球是真的吗 创业新闻

第二个地球是真的吗

第二个地球不是真的,人类还没有发现第二个适宜人类居住的星球。目前来说,地球是唯一一个存在生命的星球,这里有丰富的资源物质,宜人的气候条件,一切都显得如此自然。人类在寻找地外生命的同时,也会按着人类生存...
网格员的工作内容职责是什么 创业新闻

网格员的工作内容职责是什么

网格员的工作职责 维护治安秩序、化解矛盾纠纷、管理实有人口、提供便民利民的服务等 网格员其实指的就是驻区的社区民警。而网格指的是网格化社会服务管理模式,在这种模式下,每一个网格都有七类人员,分别是网格...
蛇的种类介绍,中国最常见的蛇类 创业新闻

蛇的种类介绍,中国最常见的蛇类

赤链蛇 无毒 全国各地都有分布的常见蛇,也是最最悲惨的蛇,因为这货花纹绚丽红黑相间,而且脾气暴躁,一般人第一反应都是这蛇有毒,很多地方的老人口口相传已经害死了无数条,实际上赤链蛇并无严格意义上的毒牙和...
耶梦加得“尘世巨蟒” 创业新闻

耶梦加得“尘世巨蟒”

前言 还记得在《战神》剧情里帮助过奎爷父子的那条名为耶梦加德的巨大蟒蛇吗?就冲着最后它敢正面硬钢巨人化的最终BOSS巴德尔这一点,就能知道它的战斗力有多恐怖了。而且新《战神》是参考了北欧神话作为游戏基...
匿名

发表评论

匿名网友 填写信息

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

确定