python批量改名

非递归版

import os,sysdef update_files_name():old_names = os.listdir(path)for old_name in old_names:if old_name!= sys.argv[0]: # 代码本身路径,防止脚本文件放在path路径下时,被一起重命名if old_name.endswith('.mp4'):#print(old_name.replace('【研学仔20.21全年更新群666赠送】',''))new_name = old_name.replace('【研学仔20.21全年更新群666赠送】','')os.rename(os.path.join(path,old_name),os.path.join(path,new_name))print(old_name,"has been renamed successfully! New name is :",new_name)if __name__ == '__main__':path = r'F:/BaiduNetdiskDownload/方程/'update_files_name()

递归版

import os,sys,redef rename_files(path):lsdir = os.listdir(path)dirs = [i for i in lsdir if os.path.isdir(os.path.join(path, i))]if dirs:for i in dirs:rename_files(os.path.join(path, i))files = [i for i in lsdir if os.path.isfile(os.path.join(path,i))]endswith1 = [".mp4",".pptx",".zip",".rar",".pdf",".png",".doc",".docx",".xlsx",".conf",".java",".txt",".htm",".mht",".html",".dll",".xmind"]endswith2 = [".jar",".jmx",".tmp",".log",".gitignore",".xml",".yml",".properties",".md",".xls",".iml",".class",".bin",".cmd",".jpg"]   endswith_tuple = tuple(endswith1)for old_name in files:#print(os.path.join(path, old_name))if old_name.endswith(endswith_tuple): #print(old_name)new_name = old_name.replace('【瑞客论坛 www.ruike1.com】','')new_name = new_name.replace('【瑞 客 论 坛 www.ruike1.com】','')            new_name = new_name.replace('【瑞  客论坛 www.ruike1.com】','')new_name = new_name.replace('【瑞  客论 坛 www.ruike1.com】','')new_name = new_name.replace('【瑞客论 坛 www.ruike1.com】','') new_name = new_name.replace('【瑞客   论 坛 www.ruike1.com】','')new_name = new_name.replace('【瑞 客论 坛 www.ruike1.com】','')  new_name = new_name.replace('【瑞客论    坛 www.ruike1.com】','')     new_name = new_name.replace('【瑞   客论 坛 www.ruike1.com】','')new_name = new_name.replace('【瑞客  论坛 www.ruike1.com】','')               #print(os.path.join(path,old_name))#print(os.path.join(path,new_name))os.rename(os.path.join(path,old_name),os.path.join(path,new_name))#print(old_name,"has been renamed successfully! New name is :",new_name) def print_files(path):lsdir = os.listdir(path)dirs = [i for i in lsdir if os.path.isdir(os.path.join(path, i))]if dirs:for i in dirs:print_files(os.path.join(path, i))files = [i for i in lsdir if os.path.isfile(os.path.join(path,i))]for old_name in files:if old_name.endswith('.mp4'): print(old_name)if __name__ == '__main__':path = r'H:\2021工程师资料'#print_files(path)rename_files(path)#print_files(path)

参考python批量改名

要用到 os 模块下的几个方法

1、os.listdir(‘/root/python/’) #列出当前目录下所有文件
2、os.path.isdir(‘/abc’) #判断是否是目录,返回布尔值,不存在也返回false
3、os.path.isfile(‘/etc/passwd’) #判断是否是文件
4、os.path.join(‘/etc/’, ‘passwd’) #连接文件,返回/etc/passwd

改名并移动到指定目录

import os
import shutildef mvFile(src,dst):fileType = [".png"]   endswith_tuple = tuple(fileType)#print('src:',src)srcPath = os.listdir(src)for old_name in srcPath:#print(old_name)#print('')if old_name.endswith(endswith_tuple): src_path = os.path.join(src, old_name)des_path = os.path.join(dst, old_name)#print('src_path',src_path)#print('des_path',des_path)shutil.move(src_path, des_path)else :continuereturnif __name__ == '__main__':src = "F:\\Baidu\\视频"dst = "F:\\Baidu\\视频\\video"for i in range(1,6) :srcDay  = 'day'+ str(i)srcDayPath = os.path.join(src, srcDay)videolist  = os.listdir(srcDayPath)print()print()print()for old_name in videolist:#print(srcDay,old_name)new_name = '0'+ str(i) + old_name#print(os.path.join(srcDayPath,old_name))#print(os.path.join(srcDayPath,new_name))os.rename(os.path.join(srcDayPath,old_name),os.path.join(srcDayPath,new_name))shutil.move(os.path.join(srcDayPath,new_name), os.path.join(dst,new_name))#print(os.path.join(dst,new_name))#mvFile(src,dst)

数字补零
使用python3的数字格式化方法。
下表展示了 str.format() 格式化数字的多种方法:

>>> print("{:.2f}".format(3.1415926))
3.14

表格

数字 格式 输出 描述
3.1415926 {:.2f} 3.14 保留小数点后两位
3.1415926 {:+.2f} +3.14 带符号保留小数点后两位
-1 {:-.2f} -1.00 带符号保留小数点后两位
2.71828 {:.0f} 3 不带小数
5 {:0>2d} 05 数字补零 (填充左边, 宽度为2)
5 {:x<4d} 5xxx 数字补x (填充右边, 宽度为4)
10 {:x<4d} 10xx 数字补x (填充右边, 宽度为4)
1000000 {:,} 1,000,000 以逗号分隔的数字格式
0.25 {:.2%} 25.00% 百分比格式
1000000000 {:.2e} 1.00e+09 指数记法
13 {:>10d} 13 右对齐 (默认, 宽度为10)
13 {:<10d} 13 左对齐 (宽度为10)
13 {:^10d} 13 中间对齐 (宽度为10)

详情参考Python format 格式化函数

查找并删除mp4文件

查找
将当前目录及其子目录下所有文件后缀为 .mp4 的文件列出来:

find . -name "*.mp4"

查找并删除

find . -name '*.mp4' -type f -print -exec rm -rf {} \;

分析:

(1) “.” 表示从当前目录开始递归查找

(2) “ -name ‘*.mp4’ "根据名称来查找,要查找所有以.mp4结尾的文件夹或者文件

(3) " -type f "查找的类型为文件

(4) “-print” 输出查找的文件目录名

(5) 最主要的是是-exec了,-exec选项后边跟着一个所要执行的命令,表示将find出来的文件或目录执行该命令。
exec选项后面跟随着所要执行的命令或脚本,然后是一对儿{}一个空格一个斜扛,最后是一个分号.

python批量改名相关推荐

  1. python批量改名_Python写个批量改名工具

    批量改名工具 ✕ 小伙伴说要给文件名前面批量添加点内容,于是就写一个简单的程序! 说起思路... 获取文件夹下的所有文件名, 修改成需要的文件名. 完了! 哈哈哈哈!!!! 主要用到的是 os 模块中 ...

  2. python 批量改名

    目录 批量改图片后缀 批量重新命名 批量复制图片: 重命名,重新编号: python 重命名 重新编号_jacke121的专栏-CSDN博客 批量改图片后缀 import glob import os ...

  3. python批量改名微信视频软件,python利用文件时间批量重命名照片和视频

    本文实例为大家分享了python利用文件时间批量重命名照片和视频的具体代码,供大家参考,具体内容如下 问题描述 承接上节的问题,在安卓和苹果间互导照片和视频还容易出现文件名混乱的问题,如下图所示. 代 ...

  4. 使用Python对文件进行批量改名

    Python在Windows系统下的路径表示回顾:反斜杠"\"是转义符,如果继续用windows习惯使用"\"表示文件路径,就会产生歧义. Windows下的原 ...

  5. Python根据Excel名单实现文件夹下文件批量改名

    班级收集截图,通过缓存快速获取图片,可是文件夹内的文件是乱码,所以采用Python进行批量改名操作 import os import xlrdcount = 1 path = "C:\\Us ...

  6. python下载文件并改名_第46p,8行代码,用Python批量重命名文件

    大家好,我是杨数Tos,这是<从零基础到大神>系列课程的第46篇文章,第二阶段的课程:Python基础知识:小案例之用Python批量重命名文件. 学习本课程,建议先看一遍:[计算机基础知 ...

  7. python 文件批量改名

    引言 最近遇到了位网友,想要批量改名文件,而且是格式化的文件名改成另一个格式的名字. emmm,说到这,笔者不厚道的笑了笑,感觉太简单了~不过呢,这位xd似乎编程能力不太行啊~ 那接下来都简单的描述一 ...

  8. python 批量resize性能比较

    目录 批量resize 文件夹批量改名 批量resize torch是最快的,能快1ms 分别是5ms 9ms  6ms,但是torch 占用cpu很高. python opencv代码: impor ...

  9. 实现文件及文件批量改名的工具(包含未确定盘符的情况下)

    标题:实现文件及文件批量改名的工具 作者:慕昊睿 时间:2019年10月30日 版权:苏比文化传媒工作室 接单:+WeChat ID:18171905547 处理前: 处理后 # 以下代码为test. ...

最新文章

  1. 「UI 测试自动化selenium」汇总
  2. 使用HtmlUnit获取html页面
  3. 压缩跟踪Compressive Tracking
  4. 利用阿里云自定义镜像实现服务器数据/网站快速迁移
  5. 中input怎么接受后台传值_[vue3]如何在vue3中优雅地使用vmodel?
  6. centos7 复制移动删除
  7. 语音识别概念午后大跌 语音识别概念股一览表
  8. bert代码使用详解
  9. C# 提示框 鼠标移动到控件提示 toolTip气泡提示框
  10. 实习日记——Day48
  11. 宝立食品IPO股价八连涨 是业绩支撑还是资本迷局?
  12. Python-day17
  13. 音程示范歌曲,lilypond example
  14. bulldog2 靶机渗透
  15. 网站403报错问题原因解答
  16. 如何写好一份前端简历
  17. 直接添加集合对象Arrays.asList()
  18. C#控制电脑注销、关机、重启
  19. iOS NSBundle常用方法及解释
  20. 简述 Mock 接口测试

热门文章

  1. 告别流氓播放器不让截屏,win10自带截屏快捷键
  2. Git 学习笔记:6 GitHub
  3. “中国儿童友好城市”倡议书发布 吁智慧城市以“儿童为本”
  4. FastDFS清空数据及文件步骤
  5. #2021暑假杭电多校8_1003.Ink on paper
  6. 8 大主流自媒体平台优缺点分析以及运营建议
  7. 3D-LaneNet:端到端三维多车道检测ICCV2019
  8. 漫画:什么是MD5算法?
  9. 在计算机网络中服务器必不可少,2020年全国计算机一级Ms Office试题(总)
  10. poj 2152 树形dp(建立消防站)