0
我想設置一些常量作爲一個階級的成員,我覺得這是錯誤的方式做到這一點:Python,如何在父類的init中設置常量?
class Unit:
def __init__(self, SYMBOL=None, RATIO_TO_METER=None):
self._symbol = SYMBOL
self._ratio_to_meter = RATIO_TO_METER
def __repr__(self):
return self._symbol
class Inch(Unit):
SYMBOL = 'in'
RATIO_TO_METER = 0.0254
class Metre(Unit):
SYMBOL = 'm'
RATIO_TO_METER = 1
class Yard(Unit):
SYMBOL = 'yd'
RATIO_TO_METER = 0.9144
例如在__repr__
方法返回無。當Unit
實例化,而不是當我想,即當self._symbol
已收到一個值時,似乎執行。
我可以通過在每個子類中有一個__init__
方法使其工作,但不會幹。 這是做什麼的權利?
不知道你要在這裏做什麼。爲什麼不讓'__repr__'返回'self.SYMBOL'? –
謝謝,你是對的。正如Martijn所指出的那樣,整個'__init__'是無用的。 – Bastian