python批量移动文件_用python批量移动文件
我是用来移动图片的,其他格式的文档也是可以的,改下后缀列表就可以了
import os,shutil
import datetime
#将文件夹里的图片全部移动到新文件夹中
#revised by Stephen Shen 2020-3-10 09:28:50
def renameFile(dstpath):
fdirname,fbasename=os.path.split(dstpath)
#文件名相同但大小不同
fname,fext=os.path.splitext(fbasename)
nowtime=datetime.datetime.now()
strtime=str(nowtime.year)+str(nowtime.month)+str(nowtime.day)+str(nowtime.hour)+str(nowtime.minute)
newfbasename=fname+'-'+strtime+fext
dstpath=os.path.join(fdirname,newfbasename)
return dstpath
def moveFile(oldpath,newpath):
if os.path.exists(newpath):
newpath=renameFile(newpath)
try:
shutil.move(oldpath,newpath)
print(oldpath+' is moved')
except:
print(oldpath+' is skipped')
inpath=r'K:\fileExtracted\imagesFromDocs'
outpath=r'K:\filesExtracted'
image_ext=['.JPG','.jpg','.png','.PNG','.jpeg','.wdp']
image_outpath=os.path.join(outpath,'image')
doc_ext=['.doc','.docx']
doc_outpath=os.path.join(outpath,'doc')
emf_ext=['.emf']
emf_outpath=os.path.join(image_outpath,'emf')
wmf_ext=['.wmf']
wmf_outpath=os.path.join(image_outpath,'wmf')
if not os.path.exists(outpath):
os.makedirs(outpath)
if not os.path.exists(image_outpath):
os.makedirs(image_outpath)
if not os.path.exists(doc_outpath):
os.makedirs(doc_outpath)
if not os.path.exists(emf_outpath):
os.makedirs(emf_outpath)
if not os.path.exists(wmf_outpath):
os.makedirs(wmf_outpath)
for folder,subfolders,files in os.walk(inpath):
for file in files:
oldpath=os.path.join(folder,file)
if os.path.splitext(file)[-1] in image_ext:
newpath=os.path.join(image_outpath,file)
moveFile(oldpath,newpath)
elif os.path.splitext(file)[-1] in doc_ext:
newpath=os.path.join(doc_outpath,file)
moveFile(oldpath,newpath)
elif os.path.splitext(file)[-1] in emf_ext:
newpath=os.path.join(emf_outpath,file)
moveFile(oldpath,newpath)
elif os.path.splitext(file)[-1] in wmf_ext:
newpath=os.path.join(wmf_outpath,file)
moveFile(oldpath,newpath)
else:
continue
print('done')
然后再删除空文件夹
import os,shutil
#将文件夹里的空文件夹删除
#revised by Stephen Shen 2020-3-8 17:50:24
inpath=r'E:\pics-moving\待分类照片'
for folder,subfolders,files in os.walk(inpath):
if not os.listdir(folder):
shutil.rmtree(folder)
# print(folder+' is empyt')
print(folder+' is deleted')
print('done')
以上就是用python批量移动文件的详细内容,更多关于python批量移动文件的资料请关注我们其它相关文章!
本文标题: 用python批量移动文件
本文地址: http://www.cppcns.com/jiaoben/python/373766.html
python批量移动文件_用python批量移动文件相关推荐
- java dom xml 换行,dom4j解析xml文件_用DOM解析XML文件,怎么才能让解析出来的文本不用换行_dom解析xml文件...
网友求助:dom4j解析xml文件_用DOM解析XML文件,怎么才能让解析出来的文本不用换行_dom解析xml文件 问题importjava.text.SimpleDateFormat; import ...
- python下载网页中的pdf文件_【Python】Python的urllib模块、urllib2模块批量进行网页下载文件...
由于需要从某个网页上下载一些PDF文件,但是需要下载的PDF文件有几百个,所以不可能用人工点击来下载.正好Python有相关的模块,所以写了个程序来进行PDF文件的下载,顺便熟悉了Python的url ...
- python 文件批量转换格式_使用python批量化音乐文件格式转换的实例
使用python批量化音乐文件格式转换的实例 最近在做声音文件数据处理,写了一个自动将m4a文件转化为wav的脚本. import os m4a_path = "/Users/Downloa ...
- 用python写名字代码_用python编写一个批量修改文件名的小程序
1.问题描述: 原有的视频文件按序排列,但是文件名没有对内容的说明,如下图所示: 原视频文件列表.jpg 想将其批量修改成如下文件名: 图2:要改成的文件名.jpg 最终想要的效果: ok.jpg 不 ...
- python怎么批量下载年报_使用Python批量下载Wind数据库中的PDF报告
原标题:使用Python批量下载Wind数据库中的PDF报告 背景 最近小编出于工作需要,准备在Wind金融数据终端批量下载上市公司2019年第一季度业绩预告.通过相关的条件检索,发现其相关数据有近百 ...
- python实现动态壁纸_利用Python批量提取Win10锁屏壁纸实战教程
前言 相信使用Win10的朋友会发现,每次开机锁屏界面都会有不一样的漂亮图片,这些图片通常选自优秀的摄影作品,十分精美. 但是由于系统会自动更换这些图片,所以就算再好看的图片,也许下次开机之后就被替换 ...
- python实现动态壁纸_实战 | Python批量提取Win10锁屏壁纸
使用Win10的朋友会发现,每次开机锁屏界面都会有不一样的漂亮图片,这些图片通常选自优秀的摄影作品,十分精美.但是由于系统会自动更换这些图片,所以就算再好看的图片,也许下次开机之后就被替换掉了. 借助 ...
- linux保存python文件_告诉Python将.txt文件保存到Linux上的某个目录 - python
我试图将文件保存在QCTestFiles目录中,但是我的脚本未将文件写入指定的目录中.我的路径文件是否适用于Linux,如果不是,我如何更改代码以在另一个目录中写入和保存文件?我当前的脚本在brper ...
- python生成wps文件_使用Python操作XLS文件(wps中叫et)
一旦TE需要* *信息的列表,我导出一个txt文件与python和扔给他们,但是他们很不开心,哈哈,因为他们想要将数以百计的数据放到xls文件列表输出,工作数量太大,所以我问我出口成xls文件然后给他 ...
- python delimiter分隔符用法_使用Python文件读写,自定义分隔符(custom delimiter)
众所周知,python文件读取文件的时候所支持的newlines(即换行符),是指定的.这一点不管是从python的doucuments上还是在python的源码中(作者是参考了python的io版本 ...
最新文章
- Could not autowire field: private javax.servlet.http.HttpServletRequest
- 【已解决】Android5.0版本如何打开调试模式
- [转]张孟苏考上的不是大学
- 【洛谷P4719】动态DP【LCT】【矩阵】
- php中的图像下载函数,PHP实现的下载远程图片自定义函数分享
- 20155222 2016-2017-2 《Java程序设计》第8周学习总结
- PP视频如何将默认缓存清晰度设置成超清
- Linux中断一网打尽(2) - IDT及中断处理的实现
- python 投票计数器全班50人3个候选人_Python程序为STV投票系统,为每个人加上所有的第一偏好票...
- xml里写sql语句大于、小于的正确方法
- jQuery 学习-样式篇(九):jQuery 存储和删除元素私有数据的方法
- java 发送邮件多个人,java 发送邮件(支持多附件,抄送人等功能)
- Odin - Inspector and Serializer 学习笔记总结
- 《职场人士必读的88个寓言》摘要
- 智能手表是java的_PerfDog性能狗实测智能手表性能
- HP JetDirect 170X 配置
- 【UVA 1589 --- Xiangqi】
- Python3 实现简易局域网视频聊天工具
- windows10 添加键盘音效
- 如何快速查看IP地址和MAC地址
热门文章
- 从 Android 6.0 源码的角度剖析 Binder 工作原理 | CSDN 博文精选
- 漫画:什么是希尔排序?
- 凉山火灾启示录:面对大火,AI 能做些什么?
- CTO职场解惑指南系列(二)春节篇
- 董明珠给格力员工加薪 10 亿;张小龙回应微信 7.0 界面变丑;库克怒怼高通 | 极客头条...
- 7名高管、半数员工离职,如何再造乔布斯重返苹果神话?
- 你与产品经理之间差的才不只是一段代码!
- 计算机辅助正畸学模型分析,计算机辅助口腔正畸算法研究
- java.util.LinkedHashMap cannot be cast to Entity
- i计算机网络的应用程序,计算机网络技术及其在校园网的研究与应用毕业论文.doc...