def showDefaultValue(cls, defl=default):
означает, что default
вычисляется при определении функции, как обычно в Python. Таким образом, определение выглядит так:
def showDefaultValue(cls, defl="default value in base"):
Это значение defl
сохраняется в качестве аргумента по умолчанию для объекта функции и используется при вызове метода без аргументов. Вы можете посмотреть на настройки по умолчанию, например print Descend.showDefaultValue.im_self.default
, чтобы проверить это.
Если вы хотите получить значение по умолчанию из текущего класса, тогда вы получите его оттуда:
@classmethod
def showDefaultValue(cls, defl=None):
if defl is None:
defl = cls.default
print "defl == %s" % (defl)