P.26 Статические (и не только) методы класса в Python

preview_player
Показать описание
#dudvstud #математиканапальцах #войтивайти

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

Инвентаризация технологий программирования:

Урок подготовлен при поддержке меценатов Evgeny Zychkov и MultiPass!

А как же работают статические поля и методы классов в Python? Оказывается, что тут все поля статические! А методы могут быть принадлежащими классу как в C++/Java, но называться методами класса, или принадлежать классу, но не быть с ним связанными внутренней логикой и называться статическими...

Код из урока тут:
Рекомендации по теме
Комментарии
Автор

В Javascript у объекта может быть ссылка на родительский объект и если свойства нет в текущем, то дальше поиск будет в родительском. Кажется что в Python похожая схема, если класс описывать

class Vector:
x = 0.0
y = 0.0

то эти поля будут у родительского объекта и обращение при чтении v.x и записи Vector.x мы обращаемся к родительскому объекту

а если записать

v.x = 3.0

то здесь мы уже создаем первое поле в текущем объекте и аналогичное поле из родительского объекта уже не доступно, Vector.x = 1.0 уже не повлияет на v.x

скорее всего для задания полей на объекте нужно использовать конструктор и делать это явно через self

anzarsh