是否可以从另一个对象调用对象

我正在尝试在 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)

我知道这个例子毫无意义,但如果可能的话,我可以做点别的。


慕尼黑的夜晚无繁华
浏览 82回答 1
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.darkcolor = 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.
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python