我正在尝试为pygame中的颜色分类。 这就是我现在所拥有的。
class color:
white = (255, 255, 255)
black = (0, 0, 0)
red = (200, 0 ,0)
green = (0, 200, 0)
blue = (0, 0, 200)
brightRed = (255, 0, 0)
darkRed = (127, 0, 0)
color = color()
print (color.brightRed)
这将按预期方式打印(255,0,0)。 我想知道是否可以做这样的事情:
color = color()
print(color.red)
print(color.red.bright)
print(color.red.dark)
所以我可以得到下一张照片:
(200, 0 ,0)
(255, 0, 0)
(127, 0, 0)
我知道这个例子是没有意义的,但是如果可以的话,我可以做些其他的事情。
答案 0 :(得分:1)
您可以定义另一个类
class Red:
bright = (255, 0, 0)
dark = (127, 0, 0)
normal = (200, 0, 0)
class color:
white = (255, 255, 255)
black = (0, 0, 0)
red = Red
green = (0, 200, 0)
blue = (0, 0, 200)
brightRed = Red.bright
darkRed = Red.dark
color = color()
print(color.red.normal)
print(color.red.bright)
print(color.red.dark)
您不能同时将color.red
既是用户定义的类又是元组,因此不能使用color.red
代替color.red.normal
。但是您可以拥有normalRed = Red.normal
,然后使用color.normalRed
。