一.项目背景
在日常工作中,我们经常需要将文件归类,特别是对于一些资源党来说。我们存储的文件类型可能各种各样,需要根据特定文件类型进行文件归类。
当文件数量较少时,我们可以在保存的时候对每个文件分别设置保存的路径。但是当有海量文件的时候,如果我们单独设置每个文件的保存路径,工作量
将会变得非常大,而且有时容易出错,这时我们利用Python办公自动化解决这个问题。
二.项目实施
import os
#获取文件类型
def get_fileTypes(file_path):
#存储文件类型
file_types=[]
#遍历当前目录文件
for file in os.listdir(file_path):
#添加文件类型
file_types.append(os.path.splitext(file)[1][1:])
#返回文件类型
return list(filter(lambda x:len(x)>0,set(file_types)))
#获取文件类型
file_types=get_fileTypes('./0914')
#输出信息
file_types
#文件归类
def file_classification(dest_path,file_types):
#读取文件路径,获取文件列表
file_list = os.listdir(dest_path)
#遍历文件类型
for file_type in file_types:
#判断文件夹是否存在,不存在则创建文件夹
if os.path.exists(os.path.join(dest_path,file_type)+'文件') ==False:
#创建文件夹
os.mkdir(os.path.join(dest_path,file_type)+'文件')
else:
print(file_type+'文件夹已存在!')
#遍历文件列表,识别文件类型并移动
for file in file_list:
#提取文件的后缀名,用于判断文件的类型
file_type = os.path.splitext(file)[1][1:]
#判断文件类型
if file_type in file_types:
#移动文件到对应的文件夹中
os.rename(os.path.join(dest_path ,file), os.path.join(dest_path,file_type)+'文件'+'/'+file)
#输出提示信息
print('文件分类完成')
#获取文件类型
file_types=get_fileTypes('./0914')
#文件归类
file_classification('./0914',file_types)
三.运行结果
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。
举报投诉
-
类型
+关注
关注
0文章
10浏览量
10114 -
文件
+关注
关注
1文章
540浏览量
24402
发布评论请先 登录
相关推荐
荣小菜补钙记第61期_LabVIEW之递归文件及文件夹
。
1. 罗列文件夹函数_常用功能
该函数用于返回目标路径下当前层级的全部文件名和文件夹名,可以通过指定“类型”来选择返回的文件类型,比如设
发表于 02-16 21:36
请教Labview如何实现清空一个指定的文件夹
本帖最后由 suicone 于 2012-8-2 14:24 编辑
我的一个程序产生数据 我想备份到一个文件夹里面 有误操作的时候方便使用然后主程序这里结束之后(或者设定为下一次启动主程序
发表于 08-01 20:36
Labview:将目标文件从一个文件夹 复制到另外一个文件夹
开发环境:Labview2014 目的:将目标文件从一个文件夹 复制到另外一个文件夹 连接是视频和说明后记:。。 老鸟请飘过 ,自己不愿意 分享 ,不要打扰别人分享。
发表于 10-14 12:49
如何删除文件夹?求老司机
本帖最后由 花斑小母猪 于 2015-1-26 13:07 编辑
labview删除指定的文件夹提示文件已打开,应该是程序之前引用过该文件夹,问下如何关闭
发表于 01-25 20:54
超级秘密文件夹 V6.70官方版 - 文件夹加密软件
级秘密文件夹的文件夹加密解密速度超快,无论多大的文件夹加密和解密都是在瞬间完成,并且文件夹的加密强度高。四、具有自动加密功能 使用方便加密文件夹
发表于 05-24 17:10
文件夹加密超级大师V16.95官方版 - 文件夹加密软件
复制、防移动。软件同时还具有数据粉碎删除、彻底隐藏硬盘分区、禁止或只读使用USB存储设备等功能。文件夹加密超级大师的主要功能特点:1 文件夹加密功能:共有五种文件夹加密方法。闪电加密:
发表于 07-06 11:36
文件夹加密超级大师V16.96官方版 - 文件夹加密软件
复制、防移动。软件同时还具有数据粉碎删除、彻底隐藏硬盘分区、禁止或只读使用USB存储设备等功能。文件夹加密超级大师的主要功能特点:1 文件夹加密功能:共有五种文件夹加密方法。闪电加密:
发表于 09-22 13:48
文件夹加密超级大师V16.97官方版 - 文件夹加密软件
复制、防移动。软件同时还具有数据粉碎删除、彻底隐藏硬盘分区、禁止或只读使用USB存储设备等功能。文件夹加密超级大师的主要功能特点:1 文件夹加密功能:共有五种文件夹加密方法。闪电加密:
发表于 10-24 14:00
共享文件夹加密超级大师 1.20版 - 国内最强的共享文件夹加密软件
。- 修复了模板文件导入的一个BUG。+ 添加了可以加密移动存储设备上的文件夹的功能。- 修复了客户端无法进行重命名操作的BUG。* 改善了文件打开方式。* 加密
发表于 01-31 10:21
windows ce 6.0 共享一个文件夹 或开机自动复制一个文件夹A到另一个文件夹B
一台CE 6.0 的系统可以访问局域网的共享文件夹A系统里面的一个软件只能访问其中的一个文件夹B。1.能共享这个文件夹吗?注册表访问不了,不知道如何修改。2.能不能用复制命令 制作一个BAT,每次开机都复制局域网内的一个
发表于 04-26 16:05
请问LABVIEW 如何批量删除文件夹的的文件?
本帖最后由 一只耳朵怪 于 2018-5-28 10:32 编辑
LABVIEW 如何批量删除文件夹的的文件我一个测试报告文件夹内有很多文件
发表于 05-28 09:35
文件夹加密超级大师V16.99官方版 - 文件夹加密软件
超级大师是一款强大易用的文件夹加密软件。文件夹加密和文件加密时有最快的加密速度,加密的文件和加密的文件夹有最高的加密强度,并且防删除、防复制
发表于 07-26 16:39
把modbus库文件夹和port文件夹复制到工程
1、把modbus库文件夹和port文件夹复制到工程目录下2、把两个文件夹添加到工程中3、把包含路径添加进来4、主程序中包含modbus相关头文件
发表于 08-24 07:30
STM32建立文件夹
Project –>New Uvision Project ,然后将目录定位到刚才建立的文件夹 Template 之下,在这个目录下面建立子文件夹 USER,然后定位到 USER 目
发表于 08-24 08:03
评论