Python实现批量压缩图片
作者:小墨青 发布时间:2021-04-20 09:58:44
标签:Python,批量压缩,压缩图片
本文为大家分享了Python实现批量压缩图片的具体代码,供大家参考,具体内容如下
# -*- coding: utf-8 -*-
"""
__author__= 'Du'
__creation_time__= '2018/1/5 10:06'
"""
import os
from PIL import Image
import glob
DIR = 'C:/Users/Public/Pictures/Sample Pictures/'
class Compress_Picture(object):
def __init__(self):
# 图片格式,可以换成.bpm等
self.file = '.jpg'
# 图片压缩批处理
def compressImage(self):
for filename in glob.glob('%s%s%s' % (DIR, '*', self.file)):
# print(filename)
# 打开原图片压缩
sImg = Image.open(filename)
w, h = sImg.size
print(w, h)
dImg = sImg.resize((200, 200), Image.ANTIALIAS) # 设置压缩尺寸和选项,注意尺寸要用括号
# 如果不存在目的目录则创建一个
comdic = "%scompress/"%DIR
if not os.path.exists(comdic):
os.makedirs(comdic)
# 压缩图片路径名称
f1 = filename.split('/')
f1 = f1[-1].split('\\')
f2 = f1[-1].split('.')
f2 = '%s%s1%s'%(comdic, f2[0], self.file)
# print(f2)
dImg.save(f2) # save这个函数后面可以加压缩编码选项JPEG之类的
print("%s compressed succeeded"%f1[-1])
if __name__ == "__main__":
obj = Compress_Picture()
obj.compressImage()
效果图:
来源:http://blog.csdn.net/qq_34218221/article/details/78979224


猜你喜欢
- 介绍也许大多数人都有在Excel中使用数据透视表的经历,其实Pandas也提供了一个类似的功能,名为pivot_table。虽然pivot_
- 前言;Python bytes 类型用来表示一个字节串。“字节串“不是编程术语,是我自己&l
- 一、c++调用Python将Python安装目录下的include和libs文件夹引入到项目中,将libs目录下的python37.lib复
- 游戏玩法根据神庙逃亡,实现一个人躲避僵尸的小游戏,主要的是精灵、精灵组之间相撞、相交的处理。游戏开始随机出现一定的僵尸,随机移动,玩家在一位
- 在我们的算法中,有一种叫做线性查找。分为:顺序查找。 折
- 我们知道Excel有一个match函数,可以做数据匹配。比如要根据人名获取成绩而参考表sheet1的内容如下:要根据sheet1匹配每人的成
- 最近一个开发需求中要求用pandas实现该需求:逐行对比两列,选出每行两列中较大的值加到第三列翻了下好像没有类似的函数,所以没办法要自己造轮
- 索引和切片相当于是对数组中内容的读(read)或者查询(inquiry)。是我们获取有用信息(demanded infomation)的重要
- 1. 在游戏循环中监听事件事件event:就是游戏启动后,用户针对游戏所做的操作例如:点击关闭按钮,点击鼠标,按下键盘监听:在游戏循环中,判
- 代码如下:--建立数据表createtable TestData ( ID int identity(1,1) primary key, D
- 本文实例讲述了python登录pop3邮件服务器接收邮件的方法。分享给大家供大家参考。具体实现方法如下:import poplib, str
- 如果用户输入的是直接插入到一个SQL语句中的查询,应用程序会很容易受到SQL注入,例如下面的例子:$unsafe_variable = $_
- 1、矩阵加法使用a = np.random.random((3,3))b = np.random.randint(0,9,(3,3))ad
- 本文实例讲述了Django框架基础模板标签与filter使用方法。分享给大家供大家参考,具体如下:一、基本的模板语言1、变量{{ }}1.1
- 本文实例讲述了微信扫码支付模式。分享给大家供大家参考,具体如下:背景:因为微信占据众多的用户群,作为程序开发,自然而然也成了研究的重点。毕竟
- 语言原生的map存在2个问题:1)不是线程安全的;2)数据量大时候需要尽量避免使用string等,GC压力很大;有人使用泛型实现了相关的co
- 本文实例为大家分享了python字典操作实例的具体代码,供大家参考,具体内容如下#!/usr/bin/env python3# -*- co
- 前言前面有篇文章我们学习了 Go 语言空结构体详解,最近又在看 unsafe包的知识,在查阅相关资料时不免会看到内存对齐相关的内容
- mro即 method resolution order (方法解释顺序),主要用于在多继承时判断属性的路径(来自于哪个类)。在python
- 可以加入以下3个参数 –without-debug --with-client-ldflags=--all-static,--w