Рубрики
Без рубрики

Статический метод Python

Python Статический метод, Python StaticMethod () Функция, Python @StaticMethod Antationation, Python Class Статический метод Пример, Python Scort Статический метод в классе, Статический метод в Python

Автор оригинала: Pankaj Kumar.

Статический метод Python

В этом быстром посте мы узнаем, как создавать и использовать статический метод Python. Мы также посмотрим на какие преимущества и недостатки статическими методами предложения по сравнению с методами экземпляра. Давайте начнем.

Что такое статический метод?

Статические методы в Python чрезвычайно похожи на методы уровня класса Python, разница в том, что статический метод связан с классом, а не объектами для этого класса.

Это означает, что статический метод может быть вызван без объекта для этого класса. Это также означает, что статические методы не могут изменять состояние объекта, поскольку они не связаны с ним. Давайте посмотрим, как мы можем создавать статические методы в Python.

Создание статических методов Python

Статические методы Python могут быть созданы двумя способами. Давайте посмотрим каждый из способов здесь:

Использование StaticMethod ()

Давайте непосредственно перейдем к фрагменту примерного кода, как использовать StaticMethod () подход:

class Calculator:

    def addNumbers(x, y):
        return x + y

# create addNumbers static method
Calculator.addNumbers = staticmethod(Calculator.addNumbers)

print('Product:', Calculator.addNumbers(15, 110))

Обратите внимание, что мы назвали Addnumbers, которые мы создали без объекта. Когда мы запускаем эту программу, вот вывод мы получим: там не было никаких сюрпризов. Этот подход контролируется как на каждом месте, можно создать статический метод из класса также. Давайте посмотрим другой подход с тем же примером здесь.

Использование @staticmethod.

Это более тонкий способ создания статического метода, поскольку нам не нужно полагаться на определение утверждения метода, являющегося методом класса, и сделать его статическим в каждом месте, которое вы делаете его статичным.

Давайте использовать эту аннотацию в кодовом фрассе:

class Calculator:

    # create addNumbers static method
    @staticmethod
    def addNumbers(x, y):
        return x + y

print('Product:', Calculator.addNumbers(15, 110))

Когда мы запускаем эту программу, вот выход мы получим: На самом деле это был гораздо лучший способ создать статический метод, так как намерение сохранить метод Static, как только мы создадим его и отметим его с помощью @staticmethod Аннотация.

Преимущества статического метода Python

Статические методы имеют очень четкое использование. Когда нам нужна некоторая функциональность не W.r.t объект, но w.r.t полный класс, мы производим метод статическим. Это почти выгодно, когда нам нужно создавать методы коммунальных услуг, так как они обычно не привязаны к жизненному цикле объекта.

Наконец, обратите внимание, что в статическом методе нам не нужен Я быть принятым как первый аргумент.

API Ссылка: Документация Python