使用 getpixel() 在 python 中遇到错误。 (getpixel() 接受 2 个位置参数,但给出了 3 个。)

Encountered an error in python with getpixel(). (getpixel() takes 2 positional arguments but 3 were given.)

我在使用 PIL 的 getpixel() 函数时遇到了一些问题,我只给它两个参数,但它说我要放 3 个?这是我的代码:

 x = self.get_piece_center_position()[0] + search_array_x[check]
        y = self.get_piece_center_position()[1] + search_array_y[check]
        r, g, b = image.getpixel(x, y)

输出:类型错误:Image.getpixel() 接受 2 个位置参数,但给出了 3 个

我也试过这个:

x = self.get_piece_center_position()[0] + search_array_x[check]
        y = self.get_piece_center_position()[1] + search_array_y[check]
        r, g, b = image.getpixel((x, y))

输出:ValueError:要解压的值太多(预期为 3)

谢谢!

问题是它返回的是 RGBA 值而不是 RGB 值!

这是我的解决方法:

r, g, b, a = image.getpixel((self.get_piece_center_position()[0] + search_array_x[check], self.get_piece_center_position()[1] + search_array_y[check]))
            if (self.check_piece_number((r, g, b)))