分享部分Python代码片段
小海同学
2022-03-02 06:30:37
0
1、文件重复查找器
有没有看过你的硬盘,想过,为什么只剩下 100MB 了? 重复文件,大概率是因为这个原因。在这里有一个脚本可以找到重复文件并删除它们:

import os
import hashlib

def hash_file(filename):
    h = hashlib.md5()
    with open(filename, 'rb') as file:
        while chunk := file.read(8192):
            h.update(chunk)
    return h.hexdigest()

def find_duplicates(folder):
    hashes = {}
    for dirpath, _, filenames in os.walk(folder):
        for f in filenames:
            full_path = os.path.join(dirpath, f)
            file_hash = hash_file(full_path)
            if file_hash in hashes:
                print(f"Duplicate found: {full_path} == {hashes[file_hash]}")
            else:
                hashes[file_hash] = full_path

find_duplicates('/path/to/your/folder')
2、自动整理下载文件夹
下面这个脚本可以帮你整理下载文件夹:

import os
import shutil

def organize_folder(folder):
    file_types = {
        'Images': ['.jpeg', '.jpg', '.png', '.gif'],
        'Videos': ['.mp4', '.avi', '.mov'],
        'Documents': ['.pdf', '.docx', '.txt'],
        'Archives': ['.zip', '.rar']
    }

    for filename in os.listdir(folder):
        file_path = os.path.join(folder, filename)
        if os.path.isfile(file_path):
            ext = os.path.splitext(filename)[1].lower()
            for folder_name, extensions in file_types.items():
                if ext in extensions:
                    target_folder = os.path.join(folder, folder_name)
                    os.makedirs(target_folder, exist_ok=True)
                    shutil.move(file_path, os.path.join(target_folder, filename))
                    print(f'Moved {filename} to {folder_name}')

organize_folder('/path/to/Downloads')
通常情况下没有人有时间去手动整理文件。

3、批量图像调整器
是否正在进行一个需要图像调整大小的项目吗?下面的脚本可以轻松帮您批量调整图片的大小:

from PIL import Image
import os

def batch_resize(folder, width, height):
    for filename in os.listdir(folder):
        if filename.endswith(('.jpeg', '.jpg', '.png')):
            img = Image.open(os.path.join(folder, filename))
            img = img.resize((width, height))
            img.save(os.path.join(folder, f"resized_{filename}"))
            print(f'Resized {filename}')

batch_resize('/path/to/images', 800, 600)

相关内容

热门资讯

智能时代如何提升我们的电器维修... 一、项目背景随着科技的飞速发展,电器设备在人们的日常生活和工作中扮演着不可或缺的角色。然而,电器故障...
百度网盘让10亿人在网上安了“... 百度网盘升级为一站式平台,注册用户超10亿在2024百度世界大会上,百度网盘宣布全面升级为集内容存储...
13年前微信安装包仅457KB... 微信正在测试一项新功能,旨在通过自动清理原图和原视频文件,减少微信占用的存储空间。这项“原图、原视频...
怎么提升我们的代码能力? 同的语言有不同的特性,甚至有不同的原理,如果没有对语言基础有比较扎实得掌握,很容易犯一些低级错误。举...
AI 引领代码编写新潮流 随着科技的不断进步,AI 在代码编写领域展现出了强大的崛起之势。近年来,人工智能技术日益成熟,其在编...
AI 代码编写的具体应用 (一)自动化代码生成AI 在自动化代码生成方面展现出强大的能力。通过自然语言处理(NLP)和机器学习...
分享部分Python代码片段 1、文件重复查找器有没有看过你的硬盘,想过,为什么只剩下 100MB 了? 重复文件,大概率是因为这...
Algen: ASDO——区块... ASDO的关键特性数据可用性预测切换:通过先进的预测模型,ASDO根据市场动态在不同数据处理方式之间...
百度的多模态路线是什么? 当ChatGPT掀起国内“百模大战”,百度率先交卷文心一言。Sora再掀视频生成风潮,却传出李彦宏内...
解决video标签在ios上无... 今天同事提了一个bug上来,说h5页面上的视频,在ios手机上播放不了。我就不信这个邪,我明明是按照...