Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

Python 클래스의 정적 메서드는 무엇입니까?


모든 python 클래스에는 인스턴스 메서드, 클래스 메서드 및 정적 메서드와 같은 세 가지 유형의 메서드가 있습니다.

예시

코드 고려

class OurClass:def method(self):return 'instance method invoke', self @classmethod def classmethod(cls):return 'class method invoke', cls @staticmethod def staticmethod():return 'static method 호출' 

세 번째 메서드인 OurClass.staticmethod는 @staticmethod 데코레이터로 표시되어 정적 메서드로 표시됩니다.

이 유형의 메소드는 self 또는 cls 매개변수를 사용하지 않지만 임의의 수의 다른 매개변수를 허용할 수 있습니다.

따라서 정적 메서드는 개체 상태나 클래스 상태를 수정할 수 없습니다. 정적 메서드는 액세스할 수 있는 데이터가 제한되어 있으며 주로 메서드의 이름을 지정하는 방법입니다. 위의 코드에서 다음과 같이 staticmethod를 호출할 수 있습니다.

>>> obj =OurClass()>>> obj.staticmethod() '정적 메서드 호출'