我得到一个运行以下代码的"无效颜色参数":
pygame.draw.rect(screen, teamcolors[0][1], button_1)
pygame.draw.rect(screen, teamcolors[1][1], button_2)
pygame.draw.rect(screen, teamcolors[2][1], button_3)
pygame.draw.rect(screen, teamcolors[3][1], button_4)
teamcolors是从csv文件导入的RGB元组列表,如下所示:
(50, 255, 255)
(0, 100, 225)
(200, 200, 0)
(0, 0, 150)
依此类推,总共有15条这样的线。
两个问题:
- 如何避免无效颜色参数错误
- 如何循环使用
draw.rect
语句,而不是逐个执行?我不知道如何迭代"button_1"one_answers"button_2",因为它不允许我为其中的按钮编号使用变量
您应该有一个按钮列表。
buttons = [button_1, button_2, button_3, button_4]
for i in range(4):
pygame.draw.rect(screen, teamcolors[i][1], buttons[i])
或者更好的
for button, color in zip(buttons, teamcolors):
pygame.draw.rect(screen, color[1], button)
至于为什么会出现无效的颜色错误,teamcolors
到底是什么样子的teamcolors[0][1]
是合适的Color
值吗?