Следите за новинками
в нашем Telegram канале. Жми, чтобы подписаться:)
⊗pyOpStMT 52 of 174 menu
◀ ▶

Статический метод и self в ООП в Python

Внутри статических методов недоступен self. Это происходит из-за того, что статические методы могут вызываться вне контекста объекта, просто обращаясь к имени класса.

В обычных методах доступны как свойства класса, так и обычные свойства.

Давайте посмотрим на примерах. Пример на обычный метод:

class Test: class_property = 'static' def __init__(self): self.usual_property = 'usual' def method(self): print(self.class_property) # выведет 'static' print(self.usual_property) # выведет 'usual' test = Test() test.method()

Пример на статический метод:

class Test: class_property = 'static' def __init__(self): self.usual_property = 'usual' @staticmethod def method(): print(Test.class_property) # выведет 'static' print(self.usual_property) # выдаст ошибку test = Test() test.method()
← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить