我以前经常把下载的东西放在桌面或者 “下载” 文件夹中,使用后再也没管它,久而久之文件夹就变得乱七八糟,再整理的时候非常痛苦,巴不得有一个自动化的工具帮我归类文档

不知道你是不是有过跟我一样糟糕的体验,不过,前段时间我用 Python 做了一个根据后缀名整理文件的工具

先来看看效果:

自动整理前:

自动整理后:

效果非常好,舒服多了!

1.准备

你只需要修改源代码主程序中调用 auto_organize 函数的参数即可完成对对应文件夹的整理,比如我想整理 C:\Users\83493\Downloads 文件夹:

if __name__ == "__main__":auto_organize(r"C:\Users\83493\Downloads")

如上所示,修改代码第 61 行的文件夹地址即可。修改完成后运行该脚本:

python auto_files.py

就能瞬间完成对指定文件夹的整理,极其方便

2.原理

这份代码的原理很简单,为了整理这些文件,我们要遍历当前指定的文件夹:如果是文件夹则跳过,如果是文件则检测后缀,分类到对应的文件夹中

文件夹名字及其对应的文件后缀如下:

DIRECTORIES = {"图片": [".jpeg", ".jpg", ".tiff", ".gif", ".bmp", ".png", ".bpg", "svg",".heif", ".psd"],"视频": [".avi", ".flv", ".wmv", ".mov", ".mp4", ".webm", ".vob", ".mng",".qt", ".mpg", ".mpeg", ".3gp", ".mkv"],"文档": [".oxps", ".epub", ".pages", ".docx", ".doc", ".fdf", ".ods",".odt", ".pwi", ".xsn", ".xps", ".dotx", ".docm", ".dox",".rvg", ".rtf", ".rtfd", ".wpd", ".xls", ".xlsx", ".ppt","pptx",".csv",",pdf"],"压缩文件": [".a", ".ar", ".cpio", ".iso", ".tar", ".gz", ".rz", ".7z",".dmg", ".rar", ".xar", ".zip"],"影音": [".aac", ".aa", ".aac", ".dvf", ".m4a", ".m4b", ".m4p", ".mp3",".msv", "ogg", "oga", ".raw", ".vox", ".wav", ".wma"],"文本": [".txt", ".in", ".out"],"编程": [".py",".html5", ".html", ".htm", ".xhtml",".c",".cpp",".java",".css"],"可执行程序": [".exe"],
}

接下来是自动整理的部分代码,先遍历指定的文件夹,识别后缀并分类到对应的文件夹中

for entry in os.scandir(dirval):if entry.is_dir():# 如果是文件夹则跳过continuefile_path = Path(dirval + "\\" + entry.name)file_format = file_path.suffix.lower()# 避免后缀大小写判断问题,全转为小写if file_format in FILE_FORMATS:directory_path = Path(dirval + "\\" + FILE_FORMATS[file_format])directory_path.mkdir(exist_ok=True)file_path.rename(directory_path.joinpath(entry.name))

还有出现不存在在我们字典里的后缀的情况,把它们分类到名为 其他文件 的文件夹中:

try:os.mkdir(dirval + "\\" +"其他文件")
except:passfor dir in os.scandir(dirval):try:if dir.is_dir():# 删除空文件夹os.rmdir(dir)else:temp = str(Path(dir)).split('\\')# 分割文件路径path = '\\'.join(temp[:-1])print(path + '\\其他文件\\' + str(temp[-1]))os.rename(str(Path(dir)), path + '\\其他文件\\' + str(temp[-1]))except:
    pass

3.自定义整理

如果你并不想按照设定好的文件整理,希望能自定义地将某些特定后缀的文件放到另一个文件夹,比如 .py 文件统一收纳到 “Python脚本” 文件夹中,你可以这么改 DIRECTORIES 变量:

改动前:

DIRECTORIES = {# ......"编程": [".py",".html5", ".html", ".htm", ".xhtml",".c",".cpp",".java",".css"],# ......
}

改动后:

DIRECTORIES = {# ......"编程": [".html5", ".html", ".htm", ".xhtml",".c",".cpp",".java",".css"],"Python脚本": [".py"],# ......
}

你可以按照这个方法,自定义收纳那些你需要整理收纳的文件格式

如果你只想对 DIRECTORIES 变量里那些后缀的文件进行整理,不属于这些后缀的文件则不进行整理,不需要放到 “其他文件” 目录下,此时要怎么做?

很简单,你只需要删除以下部分代码就可以完成这个功能:

# ......try:os.mkdir(dirval + "\\" +"其他文件")except:passfor dir in os.scandir(dirval):try:if dir.is_dir():# 删除空文件夹os.rmdir(dir)else:temp = str(Path(dir)).split('\\')# 分割文件路径path = '\\'.join(temp[:-1])print(path + '\\其他文件\\' + str(temp[-1]))os.rename(str(Path(dir)), path + '\\其他文件\\' + str(temp[-1]))except:pass
# ......

怎么样,是不是很方便?如果这个简单的脚本帮助到了你,请转发给需要的人哦

最后

在学习python中有任何困难不懂的可以微信扫描下方CSDN官方认证二维码加入python交流学习
多多交流问题,互帮互助,这里有不错的学习教程和开发工具。

python兼职资源+python全套学习资料

一、Python所有方向的学习路线

Python所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。

二、Python必备开发工具

四、Python视频合集

观看零基础学习视频,看视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。

五、实战案例

光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。

六、Python练习题

检查学习结果。

七、面试资料

我们学习Python必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。


最后,千万别辜负自己当时开始的一腔热血,一起变强大变优秀。

一键自动整理文件!简单好用的 Python 脚本相关推荐

  1. 一键自动整理文件!简单好用的Python脚本

    我以前经常把下载的东西放在桌面或者"下载"文件夹中,使用后再也没管它,久而久之文件夹就变得乱七八糟,再整理的时候非常痛苦,巴不得有一个自动化的工具帮我归类文档. 不知道你是不是有过 ...

  2. 教你写个简单好用的Python脚本一键自动整理文件非常适合办公用~

    导语 小编以前经常把下载的东西放在桌面或者"下载"文件夹中,使用后再也没管它,久而久之文件夹就变得乱七八糟,再整理的时候非常痛苦,巴不得有一个自动化的工具帮我归类文档. 不知道你是 ...

  3. 用Python脚本一键自动整理文件,轻松办公

    嗨嗨,大家下午好~ 我是小圆 因为自己对于电脑上的文件不怎么爱整理,经常把下载好的东西就随意的放在桌面上或者"下载"文件夹中,就使用过后再也没去管它了.久而久之,文件夹就变得乱七八 ...

  4. python3 自动整理文件(超简单代码)

    思路: 1.在该文件夹里面创建子文件夹 2.判断该文件夹里面所有文件的格式,也就是什么后缀名 3.将文件进行重命名并放入刚创建好的子文件夹中 4.两种整理办法: (1)利用shutil.copy这个函 ...

  5. python文件整理程序_Python实现自动整理文件的脚本

    前言 工作上的文档和资料好几个月没整理了,因为平常太忙都是随手往桌面丢.整个桌面杂乱无章全是文档和资料.几乎快占满整个屏幕了,所有我必须要整理一下了.但是手动整理太费时间了,于是我想到了python. ...

  6. .mat文件批量转成图片——python脚本编写

    .mat文件批量转成图片--python脚本编写 mat文件简介 mat文件是Matlab的数据存储的标准格式.mat文件是标准的二进制文件,还可以ASCII码形式保存和加载,在MATLAB中打开显示 ...

  7. python自动整理文件,就这么简单

    平时工作没有养成分类的习惯,整个桌面杂乱无章都是文档和资料,几乎快占满整个屏幕了.所以必须要整理一下了,今天我们来看下用python如何批量将不同后缀的文件移动到同一文件夹. 演示效果: 使用前 使用 ...

  8. 自动整理文件夹(Droplt使用教程)

    需求描述 每次我在QQ下载了东西,会很多很乱,现在我想每次文件夹变化之后就自动根据文件后缀移动 文件夹增加后自动调用 根据文件后缀移动 实现过程 本来我是想自己实现一套的,结果大概搜了一下找到了Dro ...

  9. python minimize_简单三步实现Python脚本超参数调优(附代码)

    作者:Jakub Czakon, Neptune.ai 翻译:陈之炎 校对:和中华 本文约1500字,建议阅读5分钟. Python机器学习模型建立起来之后,如何对它的性能进行优化?按照本指南中的三个 ...

最新文章

  1. 从Cell的视图推出一个新的界面
  2. Centos 7 修改主机名
  3. python3.10_概述 — Python 3.10.0a2 文档
  4. java虚拟机监控_Java虚拟机监控工具
  5. json api_JSON模式在构建和部署API中的作用
  6. 深入理解Solidity 二
  7. 在线颜色拾取器 - 资源篇
  8. tar.gz还原mysql_阿里云Mysql备份数据还原到本地流程
  9. Spring Boot基础学习笔记:可视化迎新
  10. QT--MessageBox --multi button
  11. java命令行参数_一个 java 命令行参数顺序的坑
  12. selenium的运行时异常
  13. 计算机维护宝典,超齐全的维修宝典之电脑维修实例大全
  14. The Reactive Manifesto(响应式宣言)
  15. Lock and Load FCPX 报错处理方法
  16. mysql jemalloc_jemalloc优化MySQL、Nginx内存管理
  17. 蛋白质组学与转录组学联合分析
  18. 微信小程序 免密代扣
  19. 机器人开发--二维激光SLAM介绍
  20. 软件工程与计算:第3章需求分析 测试

热门文章

  1. 服务器维护卢克退票不,吐槽DNF玩家在论坛加的卢克群 还有退一个2年多小圈子原因...
  2. 实现多方位网络营销的一些技巧
  3. 我的团长我的团第三十九集
  4. 提高计算机桌面性能,如何提高电脑运行速度 电脑高性能优化方法
  5. 一个苦逼次世代游戏建模师的内心独白,请在家长的陪同下阅读
  6. Android和iPhone截屏快捷键
  7. always@(),alwyas@(*),always用法
  8. 使IFRAME在iOS设备上支持滚动
  9. 2016年android程序员和初学者不可错过的60本好图书
  10. 在Elasticsearch中实现统计异常检测器——第一部分