从零搭建Python自动化办公体系:5个必学脚本实战
2026/9/12 19:46:42 网站建设 项目流程

前言

写了很多年Python,最让我觉得"这学得真值"的场景,不是写了多复杂的算法,而是——省时间

我统计过,Python自动化脚本帮我每周省下大约8-10小时。这个时间不是挤出来的,是程序替我干完的。本文分享5个我自己天天在用的自动化脚本,从简单到复杂排列,每个都附带完整代码和真实使用场景。

一、文件批量整理器:让桌面不再"爆炸"

场景

每天都要下载文件、截图、导出文档,一周下来桌面就乱得像战场。手动分类费时费力,不分类又找不到文件。

解决方案

import os import shutil from pathlib import Path # 分类规则:文件类型 → 目标文件夹 RULES = { "图片": [".jpg", ".jpeg", ".png", ".gif", ".bmp", ".webp", ".svg"], "文档": [".pdf", ".doc", ".docx", ".xls", ".xlsx", ".ppt", ".pptx", ".txt"], "压缩包": [".zip", ".rar", ".7z", ".tar", ".gz"], "代码": [".py", ".js", ".html", ".css", ".java", ".cpp", ".go", ".rs"], "视频": [".mp4", ".avi", ".mkv", ".mov", ".flv"], "音频": [".mp3", ".wav", ".flac", ".aac"], "安装包": [".exe", ".msi", ".dmg", ".AppImage"], } def organize_folder(folder_path, preview=True): """整理文件夹中的文件到分类子文件夹""" folder = Path(folder_path) if not folder.exists(): print(f"❌ 文件夹不存在: {folder_path}") return # 统计预览 moved_count = 0 unmoved = [] for file in folder.iterdir(): if file.is_file(): # 跳过本脚本 if file.name == Path(__file__).name: continue ext = file.suffix.lower() target_dir = None for dir_name, extensions in RULES.items(): if ext in extensions: target_dir = dir_name break if target_dir is None: target_dir = "其他" if preview: print(f" 📄 {file.name:30s} → {target_dir}/") else: dest = folder / target_dir dest.mkdir(exist_ok=True) # 处理同名文件 dest_file = dest / file.name if dest_file.exists(): stem = file.stem dest_file = dest / f"{stem}_{os.urandom(2).hex()}{ext}" shutil.move(str(file), str(dest_file)) moved_count += 1 elif file.is_file() == False: unmoved.append(file.name) print(f"\n共发现 {moved_count} 个文件") if unmoved: print(f"无法移动: {unmoved}") print(f"模式: {'预览' if preview else '执行'}") if __name__ == "__main__": # 先预览,确认没问题后去掉 preview=False organize_fo

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询