跳至主要内容

staticmethod()

staticmethod() Python 函数 为给定函数返回一个静态方法。静态方法绑定到类而不是类的实例,并且它们无权访问 selfcls 属性。此函数通常用作装饰器,在类中定义静态方法。

参数值

参数 说明
function

转换为静态方法的函数。该函数不接收隐式第一个参数。

返回值

staticmethod() 函数为给定函数返回一个静态方法。

如何在 Python 中使用 staticmethod()

示例 1

将函数转换为静态方法。静态方法不接收隐式第一个参数(通常为 self 或 cls)。它可以在类和类的实例上调用。

class MyClass:
    @staticmethod
    def static_method():
        return 'This is a static method'

print(MyClass.static_method())

obj = MyClass()
print(obj.static_method())
示例 2

允许从类本身调用静态方法,而无需创建实例。

class MathOperations:
    @staticmethod
    def add(x, y):
        return x + y

print(MathOperations.add(5, 3))
示例 3

通常在方法不依赖于类的任何特定实例并且可以出于组织目的在类中进行逻辑分组时使用。

class StringUtils:
    @staticmethod
    def is_palindrome(s):
        return s == s[::-1]

print(StringUtils.is_palindrome('radar'))