python 照片压缩 的一个方案

该篇文章介绍了使用Python实现的一个脚本,用于遍历指定文件夹中的jpg图片,将其宽度调整为2480像素并保持宽高比,然后保存为新的jpg文件。
摘要由CSDN通过智能技术生成

运行后,会替换原来的照片

# -*- coding: utf-8 -*-
import os
from PIL import Image


# 遍历文件夹,不包括子文件夹
def ergodic(imagePath, type):
    print('文件夹' + imagePath + '的' + type + '文件将进行转换')
    file_page = []
    for fi in os.listdir(imagePath):
        if fi.endswith(type):
            file_page.append(fi)
    return file_page


# 修改图片尺寸
def conver_png(jpgfile):
    print('修改' + jpgfile + '宽度为2480')
    width_new = 2480  # 确定宽度,单位像素
    im = Image.open(jpgfile)
    width, height = im.size
    height_new = round(width_new * height / width)  # 修改高度为整数
    new_im = im.resize((width_new, height_new))
    new_im.save(jpgfile, quality=80)  # 替换原文件


def jpg2jpg(path):
    os.chdir(path)  # 修改文件路径
    format_jpg = '.jpg'
    file = ergodic(path, format_jpg)
    if len(file):
        print('\n开始将JPG进行压缩')
        for fname in file:
            conver_png(fname)
    else:
        return


if __name__ == "__main__":
    imagePath = input("输入目标路径:(若为当前路径:" + os.getcwd() + ",请直接回车)\n")
    if (imagePath == ""):
        imagePath = os.getcwd()

    jpg2jpg(imagePath)
    print('修改完成')

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值