내가 다음과 같습니다 프로젝트가 실패파이썬 절대 가져 오기
my_project/
__init__.py -- empty
run.py
datacheck/
__init__.py -- empty
datacheck.py -- containing class DataCheck(object)
config.py -- containing BusinessConfig(object)
business.py -- containing class BusinessCheck(DataCheck)
내 PYTHONPATH
그 안에/my_project을 갖도록 구성된다.
run.py, 나는 다음과 같은 코드가 있습니다 :
from datacheck.business import BusinessCheck
business = BusinessCheck()
business.check_data()
business.py, 나는 실패 다음과 같은 수입이 있습니다
from datacheck.config import BusinessConfig
from datacheck.datacheck import DataCheck
from .config import BusinessConfig
작품 같은 상대적으로 수입 - 그러나 나는 많은 스레드에서 절대적인 import가 선호된다고 읽었다. 이 실패하지 않았다,
myproject/
__init__.py -- empty
run_test.py
test/
__init__.py -- empty
test1.py -- containing class Test1(object)
test2.py -- containing class Test2(Test1)
run_test.py 수입과 Test2
클래스를 실행합니다
그것은 나에게 약간의 깜짝 놀라움을 남겨줬고, 나는 왜 datacheck의 절대 수입이 작동하지 않는지 이해하지 못한다.
'from datacheck.business import Business' 그러나'business.py - 클래스를 포함하는 BusinessCheck (DataCheck)'... 클래스'Business'는 어디에 있습니까? – eumiro
'datacheck '에'__init __. py' 파일이 있습니까? 이 파일은 디렉토리를 패키지로 만들고 비울 수 있습니다. –
@eumiro : 죄송합니다. 약간의 실수를 수정하십시오. –