用Python写了个小工具,再复杂的文件夹,分分钟帮你整理!

用python进行图片素描 简介: 首先介绍素描——使用单一色彩表现明度变化的绘画。 由素描的定义可显而易见,我们目标则是将图片转为灰度图,即单通道。 为了表现色彩的明度变化,我们可以在代码中增加一种光源效果,从而达到灰度变化以模拟视觉的远近效果 代码介绍: 1.获取图片灰度转入数组,方便接下的计算。 a=np.asarray(Image.open("2022.PNG").convert("L")).astype("float") 2.分别获取图像梯度值 进行归一化处理 depth=10 grad=np.gradi 阅读详情

f838bf9bd2dc37efe7c69fefe6c7c65e.png

糟透了

我承认我不是一个爱整理桌面的人,因为我觉得乱糟糟的桌面,反而容易找到文件。

哈哈,可是最近桌面实在是太乱了,自己都看不下去了,几乎占满了整个屏幕。虽然一键整理桌面的软件很多,但是对于其他路径下的文件,我同样需要整理,于是我想到使用Python,完成这个需求。

8b9bffc768df29b0195405908b0a39ca.png

效果展示

我一共为将文件分为9个大类,分别是图片、视频、音频、文档、压缩文件、常用格式、程序脚本、可执行程序和字体文件。

# 不同文件组成的嵌套字典
file_dict = {
            '图片': ['jpg','png','gif','webp'],
            '视频': ['rmvb','mp4','avi','mkv','flv'],
            "音频": ['cd','wave','aiff','mpeg','mp3','mpeg-4'],
            '文档': ['xls','xlsx','csv','doc','docx','ppt','pptx','pdf','txt'],
            '压缩文件': ['7z','ace','bz','jar','rar','tar','zip','gz'],
            '常用格式': ['json','xml','md','ximd'],
            '程序脚本': ['py','java','html','sql','r','css','cpp','c','sas','js','go'], 
            '可执行程序': ['exe','bat','lnk','sys','com'],
            '字体文件': ['eot','otf','fon','font','ttf','ttc','woff','woff2']
        }

file_dict 是自己定义的一个字典,里面包含了我们学习、工作中常用的格式。常用格式需要为大家解释一下,对于平时经常使用,但是又不知道放在哪一类的文件,都存放在这里。

注意: 如果你的电脑中,有着其它更多的文件格式,只需要修改上述的file_dict字典即可。

在正式讲述知识点之前,我们直接看看效果吧,我特意录制了一个短视频!

开发思路

开发这样一个小工具,一共涉及到三个Python库,分别是os模块、shutil模块、glob模块,它们搭配使用,用来处理文件和文件夹,简直超给力!

整个开发步骤,大致思路是这样的:

  • ① 任意给定一个文件路径;

  • ② 获取当前文件路径下的所有文件,并取得每个文件对应的后缀;

  • ③ 判断每个文件,是否在指定的嵌套字典中,并返回对应的文件分类;

  • ④ 判断每个文件分类的文件夹是否存在。因为需要创建新的文件夹,用于分类存放文件;

  • ⑤ 将每个文件,复制到对应的分类中;

完整代码如下:【附详细的备注】

# 导入相关库
import os
import glob
import shutil

# 采用input()函数,动态输入要处理的文件路径。
path = input("请输入要清理的文件路径:")

# 定义一个文件字典,不同的文件类型,属于不同的文件夹,一共9个大类。
file_dict = {
            '图片': ['jpg','png','gif','webp'],
            '视频': ['rmvb','mp4','avi','mkv','flv'],
            "音频": ['cd','wave','aiff','mpeg','mp3','mpeg-4'],
            '文档': ['xls','xlsx','csv','doc','docx','ppt','pptx','pdf','txt'],
            '压缩文件': ['7z','ace','bz','jar','rar','tar','zip','gz'],
            '常用格式': ['json','xml','md','ximd'],
            '程序脚本': ['py','java','html','sql','r','css','cpp','c','sas','js','go'], 
            '可执行程序': ['exe','bat','lnk','sys','com'],
            '字体文件': ['eot','otf','fon','font','ttf','ttc','woff','woff2']
        }

# 定义一个函数,传入每个文件对应的后缀。判断文件是否存在于字典file_dict中;
# 如果存在,返回对应的文件夹名;如果不存在,将该文件夹命名为"未知分类";
def func(suffix):
    for name, type_list in file_dict.items():
        if suffix.lower() in type_list:
            return name
    return "未知分类"

# 递归获取 "待处理文件路径" 下的所有文件和文件夹。
for file in glob.glob(f"{path}/**/*",recursive=True):
 # 由于我们是对文件分类,这里需要挑选出文件来。
    if os.path.isfile(file):
     # 由于isfile()函数,获取的是每个文件的全路径。这里再调用basename()函数,直接获取文件名;
        file_name = os.path.basename(file)
        suffix = file_name.split(".")[-1]
        # 判断 "文件名" 是否在字典中。
        name = func(suffix)
        #print(func(suffix))
        # 根据每个文件分类,创建各自对应的文件夹。
        if not os.path.exists(f"{path}\\{name}"):
            os.mkdir(f"{path}\\{name}")
        # 将文件复制到各自对应的文件夹中。
        shutil.copy(file,f"{path}\\{name}")

结果如下:

3a26fcf413d68933c971b0ffc9c73909.png

展望

本文的代码,黄已经分享给大家了。但是我没有为这段代码制作一个可视化界面。同时,我还希望大家可以将程序打包,到时候直接发给其他人,就可以直接使用了。

有兴趣的同学可以火速加入我们的星球

3周零基础入门提供10节课程

全年12节趣味实战项目含源码,

每月奖励优秀的Top3同学送书

专业的答疑群,大厂的老师保姆式的教学

如果不满意,三天内随意退款!一年88,现在优惠16元

9044fcb6502b112bb17865ad05a0f5ac.png

扫码加入,3周零基础入门

 
 
推荐阅读:
入门: 最全的零基础学Python的问题  | 零基础学了8个月的Python  | 实战项目 |学Python就是这条捷径
干货:爬取豆瓣短评,电影《后来的我们》 | 38年NBA最佳球员分析 |   从万众期待到口碑扑街!唐探3令人失望  | 笑看新倚天屠龙记 | 灯谜答题王 |用Python做个海量小姐姐素描图 |碟中谍这么火,我用机器学习做个迷你推荐系统电影
趣味:弹球游戏  | 九宫格  | 漂亮的花 | 两百行Python《天天酷跑》游戏!
AI: 会做诗的机器人 | 给图片上色 | 预测收入 | 碟中谍这么火,我用机器学习做个迷你推荐系统电影
小工具: Pdf转Word,轻松搞定表格和水印! | 一键把html网页保存为pdf!|  再见PDF提取收费! | 用90行代码打造最强PDF转换器,word、PPT、excel、markdown、html一键转换 | 制作一款钉钉低价机票提示器! |60行代码做了一个语音壁纸切换器天天看小姐姐!|

年度爆款文案

点阅读原文,看原创200个趣味案例!

一键榨干视频干货!这个开源神器让90%知识博主慌了 扒拉了半天选了个我觉得好用的 阅读详情

相关推荐

全志T113 Tina5.0开发:(一)添加自己的板级支持包

3.验证 先执行 source build/envsetup.sh ,然后lunch,下图可见9就是我们自己添加的板子。2. 1)修改 t113-evb1.mk重命名为t113-ws_devboard。我使用的spinand,只需要修改openwrt里面的文件即可。以下内容仅作为自己笔记,如果错误欢迎留言指出。修改t113-ws_devboard。

u014428915的博客 1164

记Python开发小工具过程

学习开发一个GUI界面,将之打包成exe小工具。这里记录一下整个学习流程。

feng的博客 3404

【操作系统】 Operation System 第二章:操作系统基础操作

2.1 操作系统的启动 (1)CPU, I/O, 内存通过总线连接。 (2)DISK:存放OS; BIOS:基本I/O处理系统( basic I/O system); Bootloader: 加载OS到内存中。 (3)当电脑通电时,段寄存器CS和指令寄存器IP能够确定一个内存地址,例如CS:IP = 0xf000:fff0. (4)POST(加电自检),寻找显卡和执行BIOS。(显示器,键盘…是否...

iwanderu的博客 1万+

Python教程(8)——一文弄懂Python字符串操作(下)

在Python当中,字符串的操作方法很多,有些是常用的,有些可能不会很经常的使用到,但是需要真遇见了,还是需要需要明白其中方法的意思,所以我特意整理了以下字符串中的方法函数名解释将字符串首字母大写casefold()将字符串转换为小写并移除所有大小写特殊字符返回一个指定宽度的字符串,并在两侧填充指定字符统计子字符串在字符串中出现的次数使用指定的编码方式对字符串进行编码检查字符串是否以指定后缀结尾将字符串中的制表符转换为空格在字符串中查找子字符串,并返回索引格式化字符串。

一点 474

AI驱动全栈开发实战:基于Spec与Codex的规格驱动开发指南

1. 先搞清楚“AI重构前端全栈”到底在解决什么实际问题 最近很多人在聊“AI重构前端全栈”,听起来像是又一个营销概念。但如果你真的拆开看,它核心解决的是一个非常具体且痛苦的问题: 一个开发者,如何从零开始,系统性地、不跑偏地完成一个完整项目,并且保证代码质量和架构一致性。 传统开发流程里,产品经理出PRD,前后端开会对齐,前端画页面,后端写接口,测试再介入。这个过程沟通成本高,文档容易过时,新人上手慢。而“AI重构”的思路,是试图用一套 规范化的指令(Spec) 来驱动AI(比如Codex这类模型)生成代

weixin_30596023的博客 460

【机器学习】实验2,基于回归分析的大学综合得分预测(完整代码实现+分析)

大学排名是一个非常重要同时也极富挑战性与争议性的问题,一所大学的综合实力涉及科研、师资、学生等方方面面。目前全球有上百家评估机构会评估大学的综合得分进行排序,而这些机构的打分也往往并不一致。在这些评分机构中,世界大学排名中心(Center for World University Rankings,缩写CWUR)以评估教育质量、校友就业、研究成果和引用,而非依赖于调查和大学所提交的数据著称,是非常有影响力的一个。

高丽大学人工智能硕士在读|专注大模型、RAG、OCR与AI工程实践 1974

【python】用python写一个小工具(懒人专用)

【python】用python写一个小工具(懒人专用)

相信过程! 5695

【stm32+K210项目】基于K210与STM32协同工作的智能垃圾分类系统设计与实现(完整工程资料源码)

本系统采用SG90舵机Maix Bit摄像头STM32C8T6主控板以及LX_TRIG_MP3_V6.0语音播报模块,构建了一套高效的智能垃圾分类系统,综合运用了图像识别、语音播报及精准控制技术。SG90舵机负责控制垃圾桶的开盖操作。该舵机通过接收PWM信号来实现转动,内部有一个基准电路产生周期为20ms的PWM信号,通过外部脉冲信号的控制(高电平时间在0.5ms至2.5ms之间),使得舵机的输出轴转动到指定位置。舵机内的位置反馈电位计。

嵌入式技术开发 5099

【Python学习】图片转素描

图片转素描,批量图片转素描,python

也不一样的博客 825

Qt基础之十九:进程与QProcess

进程就是一个程序的执行实例,也就是正在运行的程序。对操作系统来说,进程就是一个担当分配系统资源CPU时间、内存的实体。在Qt 中,我们使用QProcess来表示一个进程。这个类可以允许我们的应用程序启动一个新的外部程序,并且与这个程序进行通讯。当外部程序开始启动时,QProcess的状态为Starting;外部程序已经启动时,QProcess的状态为Running,并发送started()信号;当外部层序退出了,QProcess的状态为NotRunning(初始状态),并发送finished()信号。

草上爬的博客 1万+

RT-DETR改进策略【Conv和Transformer】| HiLo注意力机制 通过分离处理图像的高频和低频信息,高效处理图像特征

本文记录的是利用改进检测模型,针对目标检测中面临的多尺度特征融合效率与长距离依赖建模难题,HiLo注意力模块的引入旨在通过频率解耦策略优化高分辨率特征处理,将高频细节(如目标边缘)与低频语义(如场景结构)分离建模,提升目标检测精度。Fast Vision Transformers with HiLo AttentionHiLo注意力模块的提出源于对传统自注意力机制局限性的反思。传统多头自注意力(MSA)在处理高分辨率图像时存在以下问题:HiLo将注意力模块分为高频(Hi-Fi)和低频(Lo-Fi)两个分支,

Limiiiing的博客 818

用Python写了个小工具,再复杂的文件夹,分分钟帮你整理

哈哈,可是最近桌面实在是太乱了,自己都看不下去了,几乎占满了整个屏幕。虽然一键整理桌面的软件很多,但是对于其他路径下的文件,我同样需要整理,于是我想到使用Python,完成这个需求。

zhishi0000的博客 998

Linux存储软件栈剖析之第5篇:F2FS文件系统

F2FS是三星专为NAND闪存设计的开源文件系统,通过异地更新、磨损均衡等机制优化闪存特性。其架构采用层次化存储管理(Block→Segment→Section→Zone)和多日志区域设计,基于数据热度分类(热/温/冷数据)提升性能。核心创新包括节点地址表(NAT)解决级联更新问题,以及基于成本的垃圾回收算法。F2FS通过检查点机制确保崩溃一致性,并利用并行访问能力充分发挥闪存性能优势,显著降低写放大效应,延长设备寿命。

指尖动听知识库 199

用Python写了个小工具,再复杂的文件夹,分分钟帮你整理,拿来即用

糟透了 我承认我不是一个爱整理桌面的人,因为我觉得乱糟糟的桌面,反而容易找到文件。 哈哈,可是最近桌面实在是太乱了,自己都看不下去了,几乎占满了整个屏幕。虽然一键整理桌面的软件很多,但是对于其他路径下的文件,我同样需要整理,于是我想到使用Python,完成这个需求。 效果展示 我一共为将文件分为9个大类,分别是图片、视频、音频、文档、压缩文件、常用格式、程序脚本、可执行程序和字体文件。 # 不同文件组成的嵌套字典 file_dict = { '图片': ['jpg','png','

m0_59164520的博客 204

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

Python一键自动整理归类文件,GUI窗口程序拿来即用

应黄同学《用Python写了个小工具,再复杂的文件夹,分分钟帮你整理,拿来即用!》一文的邀请,谁写个gui并给他投稿就送书。那么考虑大家的需要,结合实际,我按照自己的思路写下了这个小工具: 选择目录后,就可以进行整理了,下面是整理前后的效果: 看提示可以知道还支持回退。 点击回退就可以回到之前的状态并所有删除空文件夹。 根据实际需求,需要被整理的文件夹往往都是单层的,例如桌面的,所以程序并不支持去对子文件夹去递归处理。已经在子文件夹中的文件都会被认为是已经被整理过了。 使用效果: 若你想定制分类配置.

小小明-代码实体的专栏 4万+

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

Python小工具——整理文件

用Python写了个小工具,再复杂的文件夹,分分钟帮你整理,拿来即用! §01 糟透了 我承认我不是一个爱整理桌面的人,因为我觉得乱糟糟的桌面,反而容易找到文件。 哈哈,可是最近桌面实在是太乱了,自己都看不下去了,几乎占满了整个屏幕。虽然一键整理桌面的软件很多,但是对于其他路径下的文件,我同样需要整理,于是我想到使用Python,完成这个需求。 ▲ 图1 凌乱的桌面 §02 效果展示 我一共为将文件分为9个大类,分别是图片、视频、音频、文档、压缩文件、常用格式、程序脚本、可执行程序和字体文件。 #

MCP的博客 396

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

推荐6个程序员接单平台,分分钟万元进账!

一直是职场人向往的身份,尤其是程序员,有技术傍身的斜杠,如果找对平台,更是能有不菲的“今天小慕就跟大家分享一些程序员线上接单平台,如果你也有一个斜杠青年的梦,如果你也有技术在身,就赶紧马住去找点儿“外快”赚吧!进入站内可查看所有已发布的任务,明码标价,需求清晰,选择自己可完成的项目来接单即可。在解放号平台上有很多大型企业会定期发布需求,明码标价,且在详情页会标明需求内容、行业,符合条件的可以快速抢单或投标。其中发布需求的企业多以制造业、国有企业、政府办公机构为主,价格合理、技术要求也不会太复杂。

优快云_430422的博客 2564

流水的内卷人,铁打的Python!

我们学习Python必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。Python所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。原本只是想方便办公,结果功能之多,应用面之广,让人万万没想到。观看零基础学习视频,看视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。

Trb201013的博客 1360

想学Python爬虫,一文教你零基础入门!

python爬虫可以说是学习和运用python的最佳之地,本文简述python爬虫方面的知识学习路线,希望对小白的学习指引:

xxue345678的博客 773

什么是躺着赚钱,不要羡慕,一起来学习Python你也可以实现月入过万!

的进阶课程,基本涵盖了95%以上Python开发知识点,真正体系化!**

2401_84139610的博客 955

绝了!同事用Python做副业月入1万+!

当代年轻人什么最重要?当然是搞钱最重要!毕竟,租房子要钱,吃饭要钱,上下班的公交地铁也要花钱。但是小编却不得不承认:自己完全是在“自费打工”啥是“自费打工”?是说工资到手之后,交了房租水电,再扣掉还花呗信用卡的钱,不仅一分钱没挣到,还因为迟到被扣了全勤。。。如此扎心,却是小编和当代大部分年轻人最真实的写照然而这种残酷并不是属于所有人!总有一部分年轻人在同龄人日子过的苦巴巴的同时,升职加薪风生水起,还存下了买房钱!

xx16755498986的博客 178

成功上岸!刚转行的Python小兄弟,每个月收入2W多!!!

成功上岸!刚转行的Python小兄弟,每个月收入2W多!!!

分享Python知识 182

学会 Python 后可以做什么副业?

近年来,Python凭借其简洁易入门的特点受到越来越多人群的青睐。当然这不仅仅是针对程序员来说,对于一些学生、职场人士也是如此。Python为什么会大受欢迎呢?因为Python还被大家称为“胶水语言,它适用于网站、桌面应用开发、[自动化]脚本、复杂计算系统、科学计算、生命支持管理系统、物联网、游戏、机器人、自然语言处理等很多方面。而对于很多学生来说,Python可以帮助他们爬取各种资料,对于职场人来说,Python可以帮助他们实现自动化办公提高工作效率。

Z4400840的博客 788

别再手动刷Excel!这有一份Python代码对照表

数据处理是职场日常中最耗时的环节之一。传统表格工具如Excel以交互见长,但面对重复、批量或超大数据量时,效率瓶颈明显。Python则通过脚本化执行实现了从手动操作到自动化的跨越,其pandas库可高效完成筛选、聚合、合并等操作。理解两者互补原理,能帮助使用者根据任务特点选择最优工具,从而大幅提升生产力。在实际应用中,无论是多工作簿合并、按条件拆分,还是格式统一排版,Python都能以秒级响应替代小时级的手工劳作。从Excel高频操作出发,这里整理了一份实用的功能与Python代码对照表,覆盖VLOOKUP

weixin_33875564的博客 287

学了Python能干什么 ?!

随着科技的发展,人工智能这个词频繁被”cue“,即使不知道到底是个啥,也一定听说过智能语音助手“Siri”“小爱同学”,甚至见识过它们抖机灵逗开心的名场面,比如:“嘿,Siri,叫小爱同学帮我开灯!经典漫画《哆啦A 梦》,早就描绘了人机和谐共处的场面;如果我们对休闲手游感兴趣的话,那“会说话的汤姆猫”,我们也一定不会感到陌生。这只灰白相间、长相傻气中带着点诡异的猫,既不聪明,也不太可爱,但人们还是对它欲罢不能。毫无疑问,人工智能为我们的生活提供了极大的便利,就像语音助手让我们日常出行交流更快捷方便;

2401_84205765的博客 1107
上一篇: 膜拜高手!Python竟然开发命令行版网易云音乐!
下一篇: 隔离太无聊!不如用Python实现愤怒的小鸟,看看能否通关!
菜鸟学Python
博客等级 码龄9年 8062粉丝 571原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值