我如何知道何时将某些东西设为类而不是类的实例?例如:
如果我正在创建一个太空游戏(我不是),并且我希望环境是宇宙,我会写:
class Universe:
def __init__(self):
pass
Run Code Online (Sandbox Code Playgroud)
现在假设我想用星系填充我的宇宙,所以我将创建一个 Galaxy 子类,并带有大小和名称参数:
class Galaxy(Universe):
def __init__(self, size, name):
super().__init__(self):
self.size = size
self.name = name
pass
Run Code Online (Sandbox Code Playgroud)
接下来,我想制作行星。如果是这样的话,我应该创建 Galaxy 子类的子类,对吧?
class Planet(Galaxy):
def __init__(self, type, climate):
super().__init__(self, size, name):
self.type = type
self.climate = climate
pass
Run Code Online (Sandbox Code Playgroud)
从这里我想创建行星类型,或“家族”。解决这个问题的最佳方法是什么?子类的另一个子类?每个行星都将包含该行星家族独有的资源。我应该这样做吗:
class PlanetType(Planet):
resources = []
def __init__(self, resources):
super().__init__(self, type, climate)
self.resources = resources
pass
Run Code Online (Sandbox Code Playgroud)