V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
sosme
V2EX  ›  编程

AI 一秒生成的 pc 查重清理小工具

  •  
  •   sosme · 6 天前 · 263 次点击

    功能:查找硬盘重复文件并询问是否清理 思考:人与机器沟通的门槛越来越低,人只需要把想法/需求提给 ai 立刻可以获得想要的结果,完全不需要自己思考写代码,“程序员”或许会消失,取而代之的是“AI 对接员”

    ai 代码:

    import os import hashlib

    def hash_file(file_path): """计算文件的哈希值""" hasher = hashlib.md5() # 可以使用其他哈希函数 with open(file_path, 'rb') as f: while chunk := f.read(8192): hasher.update(chunk) return hasher.hexdigest()

    def find_duplicates(root_folder): """查找重复文件""" hashes = {} duplicates = []

    for dirpath, _, filenames in os.walk(root_folder):
        for filename in filenames:
            file_path = os.path.join(dirpath, filename)
            file_hash = hash_file(file_path)
    
            if file_hash in hashes:
                duplicates.append((file_path, hashes[file_hash]))
            else:
                hashes[file_hash] = file_path
    
    return duplicates
    

    def main(): # 指定搜索的根目录,例如 C:\ 或者其他驱动器 root_folder = input("请输入要搜索的根目录(例如 C:\):")

    duplicates = find_duplicates(root_folder)
    
    if not duplicates:
        print("未找到重复文件。")
        return
    
    print("找到的重复文件:")
    for i, (file1, file2) in enumerate(duplicates):
        print(f"{i + 1}: {file1}\n   {file2}")
    
    # 删除选择
    while True:
        choice = input("请输入要删除的文件编号(或者输入 'q' 退出):")
        if choice.lower() == 'q':
            break
        try:
            index = int(choice) - 1
            if 0 <= index < len(duplicates):
                file_to_delete = duplicates[index][0]
                os.remove(file_to_delete)
                print(f"已删除文件: {file_to_delete}")
                duplicates.pop(index)  # 从列表中移除已删除的项
            else:
                print("无效的编号。")
        except ValueError:
            print("请输入有效的编号。")
    

    if name == "main": main()

    目前尚无回复
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3525 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 04:28 · PVG 12:28 · LAX 21:28 · JFK 00:28
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.