每天下班回家,电脑桌面堆满了下载的发票、截图、合同和照片,找文件像翻垃圾桶。第二天上班又要花十分钟整理,烦不胜烦。其实,只要写个简单的 Python 脚本,这些事都能自动完成。
你的电脑需要一个“收纳管家”
我之前也是随手一存,结果“文档”文件夹里混着PDF、音乐、压缩包,甚至还有游戏安装包。后来干脆写了个脚本,每次我往“杂项”文件夹丢文件,它就自动识别类型,把图片移到“图片”、合同归到“工作”、发票放进“财务”。
这个脚本每天早上8点自己跑一次,就像扫地机器人一样,不用管它,但家里一直干净。
动手写个最简单的整理脚本
下面是个基础版本,能按文件后缀名分类移动:
import os
import shutil
# 目标文件夹
folder_path = "C:\Users\YourName\Downloads"
# 定义分类规则
extensions = {
"图片": [".jpg", ".png", ".gif"],
"文档": [".pdf", ".docx", ".txt"],
"视频": [".mp4", ".avi"],
"压缩包": [".zip", ".rar"]
}
for filename in os.listdir(folder_path):
file_path = os.path.join(folder_path, filename)
if os.path.isfile(file_path):
moved = False
for category, exts in extensions.items():
if any(filename.lower().endswith(ext) for ext in exts):
target_folder = os.path.join(folder_path, category)
os.makedirs(target_folder, exist_ok=True)
shutil.move(file_path, os.path.join(target_folder, filename))
moved = True
break
# 其他文件归入“其他”
if not moved:
other_folder = os.path.join(folder_path, "其他")
os.makedirs(other_folder, exist_ok=True)
shutil.move(file_path, os.path.join(other_folder, filename))
怎么让它自己运行?
Windows 自带“任务计划程序”,可以设置每天固定时间运行这个脚本。Mac 和 Linux 可以用 cron。设置一次,后面完全不用操心。
比如我设在每天晚上10点执行,等第二天起床,所有新下的文件都已经各归其位。
还能更智能一点
如果你经常收到不同公司的发票PDF,还可以让脚本读取文件名或内容,按公司名建子文件夹。比如文件名叫“腾讯_2024年服务费.pdf”,就自动扔进“财务/腾讯”目录。
这种小改动,省下的不是几分钟,而是每次打开文件夹时那种“又要找”的烦躁感。生活里的秩序感,往往就藏在这种细节里。