2
다음
내 코드의 단순화 된 버전입니다 : TestClass.py클래스 자체에서 클래스의 객체를 인스턴스화하는 방법은 무엇입니까?
에서 파일을
class TestClass: def func1(self): pass def func2(self): HERE I WANT TO CALL func1
그리고 main.py 파일
: 처음TestClass1 = TestClass()
TestClass1.func2()
, I 다음과 같이 func1
을 func2
에서 실행하려고 시도했습니다 (TestClass.py) :
TestClass.func2()
그러나이 경우 나는 다음과 같은 오류 메시지를 수신 한
는 :TypeError: unbound method func1() must be called with TestClass instance as first argument (got str instance instead)
그래서 나는이 문제가 TestClass
자체 내에 TestClass1
인스턴스가 없다는 것을 이해하는 방식은, 그것은 단지 존재 메인 (호출) 코드에서.
TestClass.func2(TestClass1)
을 그리고 그에 따라 필수 인수로 func2
에 (클래스)를 추가 한 다음 main.py에서 func2
를 호출하는 동안 그래서 위해 내가 TestClass
의 인스턴스를 통과 한 것을 수정합니다. 결과적으로 정상적으로 작동하는 것 같습니다.하지만 그렇게 할 수있는 방법인지 확인하고 싶었습니다.
'self.func1()'형식을 사용하십시오. – falsetru