大家好!
今天要给大家讲一个心酸而励志的小故事——关于我和我的图片文件夹的“爱恨情仇”。
事情是这样的,最近,我在整理硬盘的时候,发现有个文件夹里堆满了上百张照片和图片,什么格式都有:jpg , png , gif …… 看起来杂乱无章。这都不是重点,重点是文件名乱得一塌糊涂!
“IMG_20210815.jpg 、screenshot_1.png 、DSC_2034.JPG 、未命名文件.jpg ”……说实话,当我看到这个文件夹的时候,脑袋都快炸了!谁能接受这些文件名啊?每次打开都得翻老半天。整理这些文件,简直成了我生活中的噩梦。
于是,痛定思痛,我决定自己动手写个脚本来解决这个问题——把这些乱七八糟的文件按日期排序,并加上一个编号,让它们看起来整齐又有序!
什么情况适合用这个工具?
- 你有大量的图片、文档、截图,名字完全没规律。
- 你希望文件能按时间顺序排列,并自动带上编号。
- 你不想手动一个个改名(解放双手从我做起)。
接下来就是我写的这个 Python 小工具!只需要几行代码就能拯救你的文件夹。无论你是整理工作文档还是珍藏的高清美图,一键重命名,一切搞定!
import os
from datetime import datetime
def rename_files_by_date(folder_path):
# 获取文件夹中所有文件的完整路径
files = [os.path.join(folder_path, f) for f in os.listdir(folder_path) if os.path.isfile(os.path.join(folder_path, f))]
# 按文件的修改时间进行排序
files.sort(key=lambda f: os.path.getmtime(f))
# 确定序号格式,根据文件数量决定序号宽度
total_files = len(files)
num_digits = len(str(total_files)) # 确定序号的位数
for i, file_path in enumerate(files, 1):
folder, original_filename = os.path.split(file_path)
_, ext = os.path.splitext(original_filename) # 获取文件扩展名
new_filename = f"{str(i).zfill(num_digits)} {original_filename}" # 生成新文件名
new_file_path = os.path.join(folder, new_filename)
# 重命名文件
os.rename(file_path, new_file_path)
print(f"Renamed: {original_filename} -> {new_filename}")
# 使用该函数,修改这个路径
folder_path = R'd:\images'
rename_files_by_date(folder_path)
使用方法:
- 将代码复制粘贴到 Python 文件中。
- 把
folder_path 替换成你想整理的文件夹路径。
- 运行代码,它会自动将文件按时间顺序重命名,并为每个文件加上编号。
效果展示:
原始文件夹:
IMG_1234.jpg
Screenshot_2023.png
Doc_0001.docx
...
执行脚本后:
01 IMG_1234.jpg
02 Screenshot_2023.png
03 Doc_0001.docx
...
是不是很整齐?从此告别文件名乱飞的日子!
希望这个小工具能对大家有帮助!有任何问题欢迎留言讨论~
|