Module (45%)
Section (27%)

Подробно о методах: продолжение

Поскольку __init__ является методом, а метод является функцией, Вы можете выполнять те же приемы с конструкторами/методами, что и с обычными функциями.

Пример в редакторе показывает, как определить конструктор со значением аргумента по умолчанию. Проверьте это.

Код выводит:

object None

output

Все, что мы сказали о манипулировании именами свойств, относится и к именам методов - метод, имя которого начинается с __, частично скрыт.

В примере показан этот эффект:

class Classy: def visible(self): print("visible") def __hidden(self): print("hidden") obj = Classy() obj.visible() try: obj.__hidden() except: print("failed") obj._Classy__hidden()

Вывод кода:

visible failed hidden

output

Запустите программу и протестируйте ее.



Code

class Classy:
def __init__(self, value = None):
self.var = value


obj_1 = Classy("object")
obj_2 = Classy()

print(obj_1.var)
print(obj_2.var)
{{ dockerServerErrorMsg }} ×
{{ errorMsg }} ×
{{ successMsg }} ×