Освойте Python на курсе от Skypro. Вас ждут 400 часов обучения и практики (достаточно десяти часов в неделю), подготовка проектов для портфолио, индивидуальная проверка домашних заданий и помощь опытных наставников. Получится, даже если у вас нет опыта в IT.
Статические методы в Python — это особый тип методов, которые принадлежат классу, а не экземпляру класса. Они не могут изменять состояние объекта, так как не имеют доступа к его состоянию. Вместо этого они работают с аргументами, которые передаются в них непосредственно.
Рассмотрим пример. Предположим, у нас есть класс Calculator
, который выполняет различные математические операции. Мы хотим добавить метод, который будет вычислять квадрат числа, но этот метод не будет использовать или изменять состояние экземпляра класса. В этом случае мы можем сделать этот метод статическим.
class Calculator: @staticmethod def square(n): return n * n
Статический метод объявляется с помощью декоратора @staticmethod
, который ставится перед объявлением метода. В отличие от обычных методов, статический метод не принимает первым аргументом self
.
Вызвать статический метод можно как на классе, так и на его экземпляре:
print(Calculator.square(5)) # 25 calc = Calculator() print(calc.square(6)) # 36
Таким образом, статические методы в Python — это методы, которые принадлежат классу, а не его экземпляру, и работают только с теми аргументами, которые им передаются. Они полезны, когда вам нужно выполнить какую-то операцию, которая не зависит от состояния объекта.
Изучайте Python на онлайн-курсе от Skypro «Python-разработчик». Программа рассчитана на новичков без опыта программирования и технического образования. Курс проходит в формате записанных коротких видеолекций. Будет много проверочных заданий и мастер-классов. В конце каждой недели — живая встреча с экспертами в разработке для ответов на вопросы и разбора домашек.
Добавить комментарий