__init__.py
파일을 만들어 준다.import 패키지이름.모듈이름
을 쓰면된다.from 패키지이름 import 모듈이름
해야된다.import 임의패키지
사용 불가
__init__
파일이란?__init__.py
파일을 만들어 주었는데 그 이후 버전은 패키지의 인식을 위한 __init__.py
파일을 생성할 필요가 사라졌음 하지만 개발을 하면서 '이 폴더는 패키지입니다' 라고 가독성에 도움을 주기 때문에 없어도 되지만 __init__
파일을 만들어 주는 것이 좋다.__init__
파일을 활용__init__
파일에 아무것도 작성 하지 않고 패키지만 임포트 할 경우import <package>
print(<package>.<module>.<method(value)>)
실행 되지 않는다. 패키지만 임포트 하고 해당 코드를 실행시키고 싶다면 __init__.py
파일에
from <package> import module1, module2, ... module_n
을 작성해줘 외부에서 패키지만 임포트하고 사용이 가능하도록 만들 수 있다.
같은 변수가 여러번 반복 되는 것은 좋지 않음 같은 값을 잘못 타이핑 할 수 있는데 모듈마다 가지고 있는 공통 변수의 공통 값이 다를 확률이 높아 지기 때문에 통합을 해야된다.
__init__.py
사용하고자_하는_공통변수 = 공통된값
__all__
이란?import *
'임포트 스타'를 사용 할 경우 필요한 변수이다.import *
사용시 주의사항__all__
설정하는 법__init__.py
파일안에 특수변수 __all__
안에 사용하기 원하는 모듈을 작성하고 모듈을 임포트 스타할 경우에는 해당 모듈안에 __all__
를 작성하고 사용하고자 하는 네임스페이스(함수, 변수)들을 작성해준다..
표현으로 상위 폴더가 무엇인지 모르기 때문에 한번에 파악하는데 시간이 더 걸리기 때문이다.