Форум сайта python.su
В какой области видимости?
>>> class My_class: >>> nofelet = 1 >>> def __init__(self): >>> self.dragonfly = 2 >>> a = My_class() >>> a.nofelet 1
>>> My_class.nofelet = 3 >>> My_class.dragonfly = 4 >>> a.nofelet 3 >>> a.dragonfly 2
>>> a.nofelet = 5 >>> My_class.nofelet = 6 >>> a.nofelet 5
Офлайн
Изучите что такое атрибут объекта класса и атрибут экземпляра класса. Ну и ООП в целом
Офлайн
В Dive Into Pytyhon 3 есть глава, где описываются переменные экземпляра и переменные класса
http://getpython3.com/diveintopython3/iterators.html#instance-variables
http://getpython3.com/diveintopython3/iterators.html#a-plural-rule-iterator
Надо различать класс и экземпляр этого класса. Так как класс в питоне сам по себе так же является экземпляром, то у него могут быть собственные атрибуты и методы, как у какого-нибудь объекта. Атрибуты класса попадают ко всем его экземплярам в одном и том же виде. А методы класса объявляются статическими и могут использоваться напрямую, без создания экземпляра этого класса.
Атрибуты класса часто используются для задания констант, связанных с этим классом. Так ты можешь для класса окна Window иметь в этом классе читаемые константы Window.FULLSCREEN , Window.MINIMIZED. И потом ты как снаружи экземпляра, так и внутри экземпляра можешь эти константы использовать.
Отредактировано py.user.next (Авг. 9, 2018 23:19:12)
Офлайн
Пнятненько.
Учу по Луцу, из него это неочевидно
Офлайн