메소드에 인스턴스 멤버의 기본 인수 값을 전달하는 방법은 무엇입니까?
인스턴스의 속성 값을 사용하여 인스턴스 메서드에 기본 인수를 전달하려면 :class C:
def __init__(self, format):
self.format = format
def process(self, formatting=self.format):
print(formatting)
시도 할 때 다음 오류 메시지가 나타납니다.
NameError: name 'self' is not defined
메서드는 다음과 같이 동작합니다.
C("abc").process() # prints "abc"
C("abc").process("xyz") # prints "xyz"
여기의 문제는 무엇입니까, 왜 이것이 작동하지 않습니까? 어떻게이 일을 할 수 있을까요?
파이썬에서 내장 함수이기 때문에 변수 이름으로 형식을 사용하지 마십시오. – Yajushi
'process method'에서'self'의 실수 편집하기 –