首页 > 解决方案 > 无法定义特定功能

问题描述

我正在尝试修复程序中的错误,但我什至不知道如何搜索它。这个函数应该采用我给它的坐标并制作一个坐标乘以 10x 的矩形,原点在中心,坐标在矩形的中心,但是我得到了“无效语法”这些准确的线条。请帮忙!

def drawrect(screen, (r, g, b), (x, y, w, h)):
    pygame.draw.rect(screen, (r, g, b), (((width / 2) - w) * (x * 10), ((height / 2) - h) * (y * 10), w, h))

标签: pythonpygame

解决方案


看起来您必须像列表一样称呼它们。例如,使用 rgb[0]、rgb[1]、rgb[2] 代替 r、g 和 b。而不是 x, y, w, h。使用 xywh[0]、xywh[1]、xywh[2] 和 xywh[3]。最后确保当你调用你的函数时 rgb 和 xywh 是列表,以防你还没有,

例子:

1 def drawrect(screen, rgb, xywh):pygame.draw.rect(screen, (rgb[0], rgb[1], rgb[2]), (((width / 2) - xywh[2]) * (xywh[0] * 10), ((高度 / 2) - xywh[3]) * (xywh[1] * 10), xywh[2], xywh[3]))

2 xywh = [25,14,235,122]

3 RGB = [255,255,255]

4个drawrect(屏幕,rgb,xywh)

我希望这对你有用!


推荐阅读