python学习Pilow图形笔记1

英文教程 学习笔记 代码来自这问仁兄,向你学习写的笔记网页

1、准备工作

先从我说的这个代码里点击进入,会转到github中,点击clone or download收入自己的文件夹来研究,我先看看里面有什么

还有一个lena.ppm 我把它已经移到我写练习代码的文件夹里了

这个lena.ppm {PPM图像格式(PortablePixelmap)一种linux图片格式}这是接下来代码要用到的素材

前一个教程,我已近分享了如何使用pip下载第三方库

现在我们再次使用它 进入命令行输入 pip install PIL 自动安装PIL这个第三方库,如果已经有了,那就没关系

2、开始写代码了

也不是写,鼓励你们拿来用,用的不顺手改,改完觉得不错,写成教程给别人看,相互学习

进入idle,交互模式 输入下面的代码

1 >>> from PIL import Image                       #从PIL中引入Image
2 >>> im = Image.open("lena.ppm")                 #打开刚才下载的文件
3
4 >>> from __future__ import print_function       #用来打印更多的格式,python3以后就没了
5 >>> print(im.format, im.size, im.mode)          #打印图片格式、大小、颜色模式
6 PPM (512, 512) RGB

接下来交互模式继续

1 >>> im.show()

按回车 一个美女图片就出来,如果没出来可能是电脑的显示图形的软件少了

(说点闲话,写这个东西,我是边看看英文的教程边看看上面那位,算师兄吧,以英文为主,中文为辅,写这个教程的时候英文没说清楚的地方就百度、google查,查完写到代码的注释上,输到自己的python编辑器里运转一下,利人利己,哈哈,就说这么多,接下来看PIL模块的”Photoshop”功能)

tip:Alt+P是返回上一行代码

代码

 1 # 输入模块
 2 from PIL import Image, ImageFilter
 3
 4 try:
 5     # 装载图片用于打开 try:except:有点像C的if else 不过经常用来做异常处理用的
 6     original = Image.open("lena.ppm")
 7
 8     # 模糊化
 9     blurred = original.filter(ImageFilter.BLUR)
10
11     # 展示图片
12     original.show()
13     blurred.show()
14
15     # 保存并改变格式
16     blurred.save("blurred.png")
17
18 except:
19     print "Unable to load image"

创建缩略图

 1 from PIL import Image
 2
 3 size = (128, 128)
 4 saved = "lena.jpeg"  #保存为jpeg格式
 5
 6 try:
 7     im =  Image.open("Lena.ppm")
 8 except:
 9     print "Unable to load image"
10
11 im.thumbnail(size)
12 im.save(saved)
13 im.show()

图形轮廓线

1 from PIL import Image, ImageFilter
2
3 im = Image.open("Lena.png")
4 im = im.filter(ImageFilter.CONTOUR)
5
6 im.save("lena" + ".jpg")  #把刚才保存的lerr.png复制重新保存为lena.png格式
7 im.show()

不时地会更新

时间: 2024-10-26 16:44:47

python学习Pilow图形笔记1的相关文章

Python学习的个人笔记(基础语法)

Python学习的个人笔记 题外话: 我是一个大二的计算机系的学生,这份python学习个人笔记是趁寒假这一周在慕课网,w3cschool,还有借鉴了一些博客,资料整理出来的,用于自己方便的时候查阅,一开始保存在word上,代码不是很好看,于是决定复制到博客里面,可能有复制过程中出错的,或者我本身在理解方面有出错的地方,希望能得到指正,谢谢  后续的内容我会继续学习…… python下载地址  www.python.org Python 分为2.7和3.3两个版本,3.3有些库不兼容,因此用2.

python学习的部分笔记

Python学习:终于开始了啊 Date: 2014.10.30 Python 第八章 if  expression : expr_true_suite 由三部分组成,关键字+表达式+表达式为真或非零时的代码块,注意要有冒号,后面语句需要进行缩进. 单个if语句可以通过布尔操作符 and , or, not实现多重条件判断或者是否定判断. 在if中,0 以及none,””等都是false类型. 如果一个复合语句(例如 if 子句, while 或 for 循环)的代码仅仅包含一行代码,那么它可以

Python学习手冊笔记

之前为了编写一个svm分词的程序而简单学了下Python.认为Python非常好用.想深入并系统学习一下,了解一些机制,因此開始阅读<Python学习手冊(第三版)>. 假设仅仅是想高速入门.我在这里推荐了几篇文章,有其它语言编程经验的人简单看一看就能够非常快地開始编写Python程序了. 黑体表示章节. 下划线表示能够直接在原文相应位置查到的专有技术名词. 原书配套答案请到http://www.hzbook.com/Books/4572.html下载,简单注冊就可以. 第三章 怎样执行程序

《Python 学习手册》笔记 1

今天看了 Udacity 的 iOS 学习路线介绍,作者的看法是,最好先学习 Swift,而不是 Objective-C,原因一方面是 Swift 要简单一些,另一方面是因为 Apple 打算用 Swift 作为将来的官方语言取代 OC. 大学里,编程语言课程就是 C 和 C++.我不知道这是谁定的,也许他们有足够充分的理由.但是对于大多数人来说,这两个语言——一个太底层,一个太复杂)其实不见得那么重要.还不如学学 Ruby 和 Python 这样的抽象度更高的解释性语言,易于使用,而且内置了强

《python学习手册》笔记1--动态类型

转载请注明: TheViper http://www.cnblogs.com/TheViper   变量,对象和引用 在python中,类型是在运行过程中自动决定的,而不是通过代码声明.这意味着没有必要事先声明变量. a=3解析的过程: 变量创建:这里的变量a,当代码第一次给它赋值时就创建了它,之后的赋值将会已创建的变量的值. 变量类型:变量永远不会有任何和它关联的类型信息或约束.类型的概念存在于对象中而不是变量.变量原本是通用的,它只是在一个特定的时间点,简单的引用了一个特定的对象而已. 变量

python学习之图形界面编程:

一 tkinter:tkinter是python自带的支持tk的库,python代码调用tkinter->tk->操作系统提供的本地GUI(TKL语言开发))完成界面开发,不需要安装任何第三方程序.Tkinter教程第二版https://link.zhihu.com/?target=http%3A//pan.baidu.com/s/1hr6ortE,Python GUI Programming Cookbook:https://link.zhihu.com/?target=http%3A//p

《Python 学习手册》笔记 2

Mark(本书作者)觉得”脚本“和”程序“是可以相互替代的,只不过,他用”脚本“来指称简单的顶层代码文件,”程序“指称复杂的多文件应用.Python 可以用于部署大型应用,例如在测试硬件设备时,调用相关组件,通过组件在底层和器件之间进行交互. Python 的唯一缺点:速度不够快……我好想把这句话放到知乎上,看看那些老程序员怎么回…… Python 的标准实现方式,是将源代码翻译为字节码(似乎和 Java一样?),然后解释字节码.不过,它不会把字节码编译为底层的二进制代码,所以比 C 要慢. 谁

使用Python scipy linprog 线性规划求最大值或最小值(使用Python学习数学建模笔记)

函数格式 scipy.optimize.linprog(c, A_ub=None, b_ub=None, A_eq=None, b_eq=None, bounds=None, method='simplex', callback=None, options=None) 今天阅读数据建模第一章线性规划问题,问题描述如下: 通过介绍我们知道了线性规划,就是目标函数及约束条件均为线性函数. 通过画图我们可知,X1,X2的最优解为2,6,目标值为26. 我们如何时候这个scipy的公式来计算这个值呢:

python学习--交互式图形编程实例四

#!/usr/bin/env python3 # -*- coding: utf-8 -*-#画雪 from turtle import * from random import * def ground(): hideturtle() speed(100) for i in range(400): pensize(randint(5,10)) #画笔大小随机 x = randint(-400,350) y = randint(-280,-1) r = -y/280 #<1的随机值 g = -y