【第22期】观点:IT 行业加班,到底有没有价值?

python练手项目0005

原创 2017年01月03日 14:20:12

本项目采用的是https://github.com/Yixiaohan/show-me-the-code中所提供的练习项目,所有代码均为原创,转载请注明,谢谢。


问题描述:练习0005的问题是有一个目录,装了很多照片,把它们的尺寸变成都不大于 iPhone5 分辨率的大小。

iPhone5的分辨率为1136*640,需要将整个图片放缩到这个尺寸范围之内(可以比这个小)。具体代码如下:

"""
Created on Tue Jan 03 13:13:32 2017


@author: sky
"""
from PIL import Image
def change_size(path):
    with Image.open(path) as im:
        w,h = im.size
        print im.size
        n = (w/1136.0 if (w/1136.0) >= (h/640.0) else h/640.0)
        print w/n,h/n
        im_new = im.resize((int(w/n),int(h/n)))
        im_new.save('finish'+'.jpg')
if __name__ == '__main__':
    change_size('1.jpg')


注意:也有人有image中的thumbnail来进行缩放,但是好像只能讲图片缩小,但不能放大(其实也可以,但是为了效果更好),这里采用了resize

在做除法的时候,分母必须带小数点,不然会得到0,可以参考Python的运行机制问题

详细代码和结果,可以参考https://github.com/g8015108/exercise-for-python

过于image的更多资料可以参考http://www.cnblogs.com/way_testlife/archive/2011/04/17/2019013.html

版权声明:本文为博主原创文章,未经博主允许不得转载。 举报

相关文章推荐

有哪些适合新手练手的Python项目?

学习编程专栏连载编程新手练手项目系列之python项目篇,同样也欢迎热爱学习、对Java感兴趣的朋友学习翻阅上两篇内容。(连载系列的项目整理以后会在每个月进行一次重新整理,也欢迎大家进行项目的投稿,投...

Python学习路径及练手项目合集

转载自知乎 Wayne Shi,仅仅为了方便收藏查看,侵权删。 阶段1:入门知识 零编程基础的可以先从下面几个教程了解编程及环境入门知识。(已有编程基础直接从阶段2起步) 1. ...
  • funj_
  • funj_
  • 2016-11-15 10:42
  • 3509

10个Python练手项目

标记一下Python的练手项目10个Python练手项目:python项目练习一:即时标记python项目练习二:画幅好画python项目练习三:万能的XMLpython项目练习四:新闻聚合pytho...

Python练手项目0008

本项目采用的是https://github.com/Yixiaohan/show-me-the-code中所提供的练习项目,所有代码均为原创,转载请注明,谢谢。 问题描述:练习000...

python练手项目0007

有个目录,里面是你自己写过的程序,统计一下你写过多少行代码。包括空行和注释,但是要分别列出来。

Python练手项目0012

本项目采用的是https://github.com/Yixiaohan/show-me-the-code中所提供的练习项目,所有代码均为原创,转载请注明,谢谢。 问题描述:敏感词文本文件 filte...

Python练手项目0006

第 0006 题:你有一个目录,放了你一个月的日记,都是 txt,为了避免分词的问题,假设内容都是英文,请统计出你认为每篇日记最重要的词

70个Python练手项目列表(都有完整教程)(需要注册实验楼账号)

原文链接:http://www.jianshu.com/p/b577a1655144 前言: 不管学习那门语言都希望能做出实际的东西来,这个实际的东西当然就是项目啦,不用多...

10个python练手项目

 标记一下Python的练手项目 10个python练手项目: python项目练习一:即时标记 python项目练习二:画幅好画 python项目练习三:万能的XML python项...
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)