学 Python 断断续续快两年了,虽然水平还停留在业余爱好者阶段,但它确实帮我解决了不少日常中的琐事。有时写一个几十行的小脚本,就能把一个原来需要手动操作半小时的重复劳动变成一个命令搞定的事情。今天分享几个我觉得特别实用的小脚本,都是在我自己的日常中真实用到的。
第一个是批量重命名脚本。这个需求来源于整理照片——手机和相机拍的照片文件名都是 IMG_0001 这种格式,时间长了根本分不清哪张是什么时候拍的。我写了一个脚本,读取照片的 EXIF 信息,提取拍摄日期和时间,按照「年月日_时分秒」的格式重命名文件。脚本本身只有大概三十行,但用起来非常爽——把几百张照片拖进去,一秒钟全部重命名完成,干净清爽。
第二个是天气预报爬虫。每天出门前想知道今天会不会下雨,但是打开天气 App 总是有一堆广告和推送,看个温度要翻好几下。我就写了一个很简单的脚本,每天早上定时从公开的天气 API 接口获取当天的天气数据,然后把关键信息——温度、天气状况、降雨概率、风速——通过邮件发给自己。后来觉得邮件还不方便,又从邮件改成了直接在终端打印出来,早上起床打开电脑第一眼就能看到今天的天气摘要。
第三个是文件整理脚本。我的下载文件夹总是各种文件混在一起——PDF、图片、安装包、文档、压缩包,时间长了像垃圾堆一样。写了一个脚本,扫描整个下载文件夹,按文件类型自动分类——所有的图片移到 Pictures、PDF 移到 Documents、安装包移到 Software。每种类型可以设置不同的存放路径,每周定时执行一次,从此下载文件夹永远保持干净不混乱。
最后分享一个小工具——一个用 Python 写的简单的番茄钟。因为工作需要长时间盯着屏幕写代码,眼睛和颈椎经常不舒服。这个番茄钟的逻辑很简单——工作 25 分钟后弹一个系统通知提醒休息,休息 5 分钟之后再提醒开始下一轮。四个番茄之后来一个长休息。虽然功能简单到不行,但它确实帮我养成了定时站起来活动的习惯。
上面这几个脚本代码量都不大,逻辑也不复杂,但它们都有一个共同点——都是因为生活中真的有这个需求才去写的。我觉得这也是学编程最让人有成就感的地方:不需要写出多么高大上的项目,哪怕是解决了一个真实的、细碎的小问题,那种「我写的东西真的帮到了自己」的感觉就很好。