Python의 정적 메소드

Python의 정적 메소드

기사 디렉토리


Python에서 staticmethod 메소드가 정적이므로 클래스 인스턴스를 생성하지 않고도 호출할 수 있음을 나타내는 데 사용되는 특수 데코레이터입니다. 정적 메서드는 일반적으로 클래스의 인스턴스 상태와 무관한 기능을 구현하는 데 사용됩니다.

staticmethod다음은 사용 예 입니다 .

class MyClass:  
    @staticmethod  
    def hello_world():  
        print("Hello, world!")  
  
# 调用静态方法  
MyClass.hello_world()

위의 예에서 hello_world메서드는 정적으로 표시되므로 MyClass생성된 인스턴스 없이 직접 호출할 수 있습니다.

self정적 메서드는 클래스 인스턴스에 의존 하지 않기 때문에 매개 변수를 허용하지 않는다는 점은 주목할 가치가 있습니다 . 또한 인스턴스가 명시적으로 매개 변수로 전달되지 않는 한 정적 메서드는 인스턴스 속성이나 클래스의 메서드에 액세스할 수 없습니다.

다음은 클래스 인스턴스 속성에 액세스하기 위해 정적 메서드를 사용하는 예입니다.

class MyClass:  
    def __init__(self, name):  
        self.name = name  
  
    @staticmethod  
    def say_hello(instance):  
        print(f"Hello, {
      
      instance.name}!")  
  
# 创建一个实例并调用静态方法  
my_instance = MyClass("Alice")  
MyClass.say_hello(my_instance)

위의 예에서 say_hello메서드는 MyClass인스턴스를 매개 변수로 받아들이고 name해당 인스턴스의 속성을 사용하여 인사말 메시지를 인쇄합니다.

"AUTOSAR 계보 분해(ETAS 툴체인)" 종합 카탈로그

おすすめ

転載: blog.csdn.net/PlutoZuo/article/details/132849204