Я пытаюсь понять, как Python (2.6) имеет дело с классами, экземплярами и т.д., и в определенный момент я пробовал этот код:
#/usr/bin/python2.6
class Base(object):
default = "default value in base"
def __init__(self):
super(Base, self).__init__()
@classmethod
def showDefaultValue(cls, defl = default):
print "defl == %s" % (defl)
class Descend(Base):
default = "default value in descend"
def __init__(self):
super(Descend, self).__init__()
if __name__ == "__main__":
Descend.showDefaultValue()
Вывод: "значение по умолчанию в базе"
Мне было интересно, почему поле "default" не перегружено классом Descend... Есть ли способ переписать его? Почему он не перезаписывается?
Любая подсказка (или ссылка на пояснительную страницу будет оценена по достоинству). Спасибо!