pyautogui pixelMatchesColor返回“无法调用'int'对象”错误

时间:2019-06-20 15:48:42

标签: python-3.x int callable pyautogui

我正在使用pyautogui来检查像素是否与颜色匹配,例如在《自动化无聊的东西》第18章中。

我的程序(在重新启动IDLE之后)整体是:

import pyautogui
pyautogui.pixelMatchesColor(50,100 (255,255,255))

就是这样。

返回以下内容:

TypeError: 'int' object is not callable

我查看了其他“ int is not callable”线程,它们似乎与诸如函数之类的变量有关。这里不是这种情况。我还在以下位置检查了文档:https://pyautogui.readthedocs.io/en/latest/screenshot.html,但看不到出了什么问题。

任何人都可以告诉我我忽略了什么吗?谢谢。

1 个答案:

答案 0 :(得分:0)

看起来您需要在100和元组之间使用逗号。然后应该可以正常工作,因为pixelMatchesColor采用x坐标,y坐标和RGB元组。照原样,Python认为您正在尝试使用参数255、255和255调用函数100。

pyautogui.pixelMatchesColor(50,100,(255,255,255))

应该工作。您没有像函数一样命名的变量,但是您不由自主地将常量/整数像函数一样,并在括号后面。

类似的错误如下:

x = [1, 2]
print(x(1))
TypeError: 'list' object is not callable

或者相反,在函数上使用括号

def a(x): return False
print(a[True])
TypeError: 'function' object is not subscriptable

我仍然经常收到“对象不可调用/不能下标”错误,但是我已经习惯于检查括号/括号的正确使用。