尝试将PIL图像传递给函数,导致TypeError:'tuple'对象不可调用

时间:2019-04-28 02:51:28

标签: python-3.x

在此方面,我将不胜感激。

我收到错误TypeError:'tuple'对象不可调用。

我只是试图传递从PIL Image.open返回的图像,然后转换为“ RGB”以执行一些简单的像素操作。可能还有其他(甚至更好)的方法可以做到这一点,但我想知道是否可以做到。 谢谢, 保罗

def reduce_color(image):   
    width, height = image.size()
img=Image.open("junk.gif")
img=img.convert('RGB')
new_image = reduce_color(img)  ----> TypeError: 'tuple' object is not callable

1 个答案:

答案 0 :(得分:0)

我认为您误会了异常的来源。引起异常的不是您对reduce_color的调用,而是函数内的 代码。您正在尝试调用img.size(),但是PIL Image对象的size属性是一个返回元组而不是函数的属性。

因此,请使用width, height = image.size(最后不要使用())。