CODEDRAGON ㆍDevelopment/Python
__init__.py
· 패키지 디렉토리에는 일반적으로 __init__.py 라는 패키지 초기화 파일이 존재합니다.
· __init__.py 파일은 해당 디렉터리가 패키지의 일부임을 알려주는 역할을 합니다. 즉, 일반 디렉토리와 패키지 디렉토리를 구분시켜주는 역할을 합니다.
· 만약 패키지에 포함된 디렉터리에 __init__.py 파일이 없다면 패키지로 인식되지 않습니다. (python3.3 버전 이전)
· python3.3 버전부터는 __init__.py 파일 없이도 패키지로 인식이 됩니다(PEP 420). 하지만 하위 버전 호환을 위해 __init__.py 파일을 생성하는 것이 좋습니다.
· 하위버전의 패키지 디렉토리에 __init__.py 파일이 없으면 임포트 오류(ImportError)가 발생합니다.
· __init__.py 파일에 패키지를 초기화하는 파이썬 코드를 넣을 수 있습니다.
PEP 420 -- Implicit Namespace Packages
https://www.python.org/dev/peps/pep-0420/
__all__ 키워드 변수
· 해당 패키지 디렉터리에서 * 기호를 이용하여 import할 경우 __all__에 정의된 모듈만 import됩니다.
· "from 패키지명 import *" 문을 사용할 때, 그 패키지 내에서 import 가능한 모듈들의 리스트를 담고 있습니다. 그래서, __all__ 에 없는 모듈은 import 되지 않고 에러가 발생하게 됩니다.
__all__ = ['모듈명'] |
패키지안의 모든 모듈 임포트
from 패키지명 import * |
'Development > Python' 카테고리의 다른 글
sys.path.append() (0) | 2020.03.11 |
---|---|
로그 수준(level) (0) | 2020.03.11 |
Exception 계층도 (Exception hierarchy) (0) | 2020.03.11 |
예외의 종류 (0) | 2020.03.11 |
shutil 모듈 (0) | 2020.03.10 |