Python 练习册,每天一个小程序(0005)
来源:互联网 发布:大数据分析模型代码 编辑:程序博客网 时间:2024/05/16 15:03
详细题目在https://github.com/Yixiaohan/show-me-the-code上。此次是0005题,把一个文件夹下的图片的尺寸都设置为不大于 iPhone5 分辨率。
总的思路是读取指定文件夹下的所有对象,如果是图片文件则执行resize操作,如果是目录或者其他文件则不操作。resize操作就是对图片的像素大小与iPhone5分辨率进行比较,如果大于iPhone5分辨率则按比例调整大小,反之不进行操作。
Image Module文档的链接https://pillow.readthedocs.org/en/3.0.0/reference/Image.html
# -*- coding: utf-8 -*-import Imageimport os#定义标准大小,Size = 1136,640#获得该文件夹下所有文件,如果是图片则调用resize函数来设置,如果是目录或者其他文件则不操作。def getImage(directory): list = os.listdir(directory) for item in list: filepath = os.path.join(directory,item) if not os.path.isdir(filepath): image = Image.open(directory+'/'+item) resize(image,directory,item) return "Done"#如果超过标准大小,则根据比例进行对应的缩放,并且以JPEG的格式保存在一个名为result的文件夹中def resize(imageFile,dir,imageName): if imageFile.size[0] > Size[0] or imageFile.size[1] > Size[1]: newWidth = Size[0] newHeight = float(Size[0]) / imageFile.size[0] * imageFile.size[1] imageFile.thumbnail((newWidth,newHeight), Image.ANTIALIAS) imageFile.save(dir+'/result/'+imageName,"JPEG")#图片文件目录名字dir = 'image'print getImage(dir)
0 0
- Python 练习册,每天一个小程序
- Python 练习册,每天一个小程序
- Python 练习册,每天一个小程序
- Python 练习册,每天一个小程序
- Python 练习册,每天一个小程序(0005)
- Python 练习册,每天一个小程序(0000)
- Python 练习册,每天一个小程序(0001)
- Python 练习册,每天一个小程序(0004)
- Python 练习册,每天一个小程序(0006)
- Python 练习册,每天一个小程序(0007)
- 【转载】Python练习册,每天一个小程序
- Python 练习册,每天一个小程序(0000)
- Python 练习册,每天一个小程序(1)
- Python 练习册,每天一个小程序0000
- Python 练习册,每天一个小程序(0002)
- Python 练习册,每天一个小程序-解答
- Python 练习册,每天一个小程序----------001使用 Python 如何生成多位随机数
- Python 练习册,每天一个小程序----------000 图片右上角加上红色的数字
- 线段树区间更新模板(lazy延迟标记)(1698)
- Struts2的Action访问Spring的业务逻辑组件的两种策略
- A star
- Matlab中以三维的方式显示灰度图像
- NYOJ840 吃花生
- Python 练习册,每天一个小程序(0005)
- nyoj 115 城市平乱【最短路】
- 人工蜂群算法
- lightoj 1005 ROOKS(组合数)
- 旅行者
- FZU 2102 Solve equation (进制转换)
- 数据仓库中捕获变化数据(CDC,Changed Data Capture)的四种手法
- Gson,FASTjson 解析字符串为数组,日期等方式
- 关于求N个无序数中第K大的数。