@Panda_Code
Сognizer

В чем разница между переменными класса и экземпляра?

Хочу уловить суть, смысл в переменных экземпляра класса?
Понимаю, что переменная класса,что-то вроде глобальной переменной и пользоваиться ей могут все экземпляры, тогда как переменная класа, это локальная переменная и пользоваться ей может только экземпляр класса? В каких случаях, тогда стоит задавать переменную класса?

class Mag:
    lvl = 100

    def __init__(self, name, rank):
        self.name = name
        self.rank = rank

    def spell(self, enemy) -> None:
        if enemy == 'human':
            print('You can`t kill a human')
        else:
            print(f"{self.name} make a spell on {enemy}!")


Заранее спасибо за разъяснение!
  • Вопрос задан
  • 124 просмотра
Пригласить эксперта
Ответы на вопрос 1
szafranji
@szafranji
wro
Советую прочесть книгу М.Лутца, вроде, второй том.
Там как раз "по атомам" автор разбирает принципы работы классов, экземпляров и ООП в целом.
Если ручки добрались до ооп, то нужно достаточно подробно знать как работает эта парадигма, в книге как раз все разъясняется.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы