2014-03-12 10 views
4

부적절하게 패키지화 된 Python 모듈이 있습니다. 디렉토리에는 __init__.py 파일 만 있습니다. 이 파일은 내가 사용하고자하는 클래스를 정의합니다. 스크립트에서 모듈로 사용하는 가장 좋은 방법은 무엇입니까?Python에서 모듈 가져 오기

** 수정 ** 폴더의 이름에 마침표 (.)가 있었다

. 그래서 여기서 제안 된 방법들은 효과가 없었습니다. 폴더의 이름을 올바른 이름으로 바꾸면 제대로 작동합니다.

답변

7

그건 부적절한 것이 아닙니다. 그것은 패키지입니다.

import package 
x = package.ClassName() 

또는 :

from package import ClassName 
x = ClassName() 
+0

모듈의 폴더 이름에 마침표가 있었으므로 오류가 발생했습니다. 이름을 바꾸면 제대로 작동합니다. – gat

0

디렉토리 my_module__init__.py를 넣고, 확인 my_module하게 yourmodule.py에서

http://docs.python.org/2/tutorial/modules.html#packages

package/ 
    __init__.py 
yourmodule.py 

, 다음 중 하나를 수행 할 수 있습니다 은 (는)에 있습니다., from my_module import WHAT_EVER_YOU_WANT

0

반드시 부적절하게 포장 된 것은 아닙니다. 평소처럼 from package import X을 할 수 있어야합니다. __init__.py 파일은 다른 .py 파일과 마찬가지로 모듈이며, 일반적인 사용법 외에도 평가 방법에 대한 특수한 의미를 가지며 패키지 이름에 기본적으로 별칭이 지정됩니다.