猿问

python PIL图片处理基础问题

照着网上很多例子写的,python3版本环境

测试代码1

from PIL import Image
img = Image.open("qqqqq.png")print (img.size)               #这里运行打印出图片尺寸(10,24)print(img.getpixel((10,24)))   #这里运行出错提示:
                               # IndexError: image index out of range

图片是10*24的尺寸,为嘛超出范围呢。是不是坐标要减1?最右下角的点该是(9,23)?

测试代码2

from PIL import Imageimg = Image.open("qqqqq.png")print(img.getpixel((4,4)))     #这里运行打印结果:3

这个3是什么意思?不该是类似(255,255,255)的结果么?

测试代码3

img = Image.open("qqqqq.png")img.putpixel((4,4),(255,255,0))   #这行运行提示错误:                                  #TypeError: function takes exactly 1 argument (3 given)  
img.save("qqqqq-2.png","png")

改一个像素点的颜色,看上错误提示给的参数数量不对?

尴尬的,发了问题就想到原因了。。。


呼啦一阵风
浏览 862回答 1
1回答

茅侃侃

原因是png图模式的原因,后面来的菜鸟注意一下
随时随地看视频慕课网APP
我要回答