정적 메서드가있는 클래스가 들어있는 Pqr.py라는 이름의 파이썬 파일이 있습니다.파이썬에서 다른 클래스의 정적 메서드 호출
import subprocess
class Pqr:
@staticmethod
def callTheService(a,b,c):
subprocess.call(a,b,c)
이제이 정적 메서드에 다른 파이썬 파일에있는 다른 클래스에서 액세스하려고합니다. 두 .py 파일은 모두 같은 디렉토리에 있습니다. 모듈 'PQR'더 속성 'callTheService'가
당신은 내가 해결하는 데 도움이 시겠어요가 없습니다 : 두 번째 파일의 코드는 내가 이것을 실행하려고하면
import Pqr
class Rst:
Pqr.callTheService("a", "b", "c")
, 내가 AttributeError의 오류가 발생한다 이 오류?
은 파일 이름이'Pqr.py'입니까? 모듈이 아닌 * 클래스 *에 액세스해야하므로'Pqr.Pqr.callTheService'를 사용하십시오. 파이썬에서는 일반적으로 모듈에 클래스와 동일한 이름을 부여하지 않습니다 (Python! = Java). BTW, 이것은 Python 명명 규칙을 따를 경우 더 분명합니다. 일반적으로 모듈 이름에'lower_case'를 사용하고,'camelCase'를 막아줍니다! –
다음은 [Style Guide for Python Code] (https://www.python.org/dev/peps/pep-0008/) 링크입니다. – Matthias
와우, @ juanpa.arrivillaga 당신은 몇 분 안에 내 문제를 해결! 엄청 고마워. – swarupmishal