电脑用久了,桌面和下载文件夹总会变得一团糟。用 Python 写几个脚本,一键重命名、按类型归档、清理重复文件。

一、批量重命名

1. 统一命名规则

import os

def batch_rename(directory, prefix="file", start=1, digits=3):
    """
    统一命名:prefix_001.ext, prefix_002.ext ...
    directory: 文件夹路径
    prefix: 文件名前缀
    start: 起始编号
    digits: 编号位数
    """
    files = [f for f in os.listdir(directory)
             if os.path.isfile(os.path.join(directory, f))]

    # 按修改时间排序
    files.sort(key=lambda x: os.path.getmtime(
        os.path.join(directory, x)))

    for i, filename in enumerate(files):
        name, ext = os.path.splitext(filename)
        new_name = f"{prefix}_{str(start + i).zfill(digits)}{ext}"
        old_path = os.path.join(directory, filename)
        new_path = os.path.join(directory, new_name)
        os.rename(old_path, new_path)
        print(f"{filename}{new_name}")

2. 替换文件名中的关键词

def replace_text(directory, old_text, new_text):
    """批量替换文件名中的关键词"""
    count = 0
    for f in os.listdir(directory):
        fp = os.path.join(directory, f)
        if os.path.isfile(fp) and old_text in f:
            new_name = f.replace(old_text, new_text)
            os.rename(fp, os.path.join(directory, new_name))
            count += 1
    print(f"共替换 {count} 个文件")

二、智能文件归档

import shutil

EXTENSION_MAP = {
    ".jpg": "图片", ".jpeg": "图片", ".png": "图片", ".gif": "图片",
    ".doc": "文档", ".docx": "文档", ".pdf": "文档", ".txt": "文档",
    ".xls": "表格", ".xlsx": "表格",
    ".zip": "压缩包", ".rar": "压缩包", ".7z": "压缩包",
    ".mp4": "视频", ".avi": "视频",
    ".mp3": "音乐", ".wav": "音乐",
    ".py": "代码", ".java": "代码", ".js": "代码", ".html": "代码",
}

def auto_sort(directory):
    """按文件类型自动归档"""
    for f in os.listdir(directory):
        fp = os.path.join(directory, f)
        if not os.path.isfile(fp):
            continue
        _, ext = os.path.splitext(f)
        folder = EXTENSION_MAP.get(ext.lower(), "其他")
        target = os.path.join(directory, folder)
        os.makedirs(target, exist_ok=True)
        shutil.move(fp, os.path.join(target, f))

💡 觉得有用的话,点赞 + 关注【张老师技术栈】吧!

Logo

Agent 垂直技术社区,欢迎活跃、内容共建。

更多推荐