그것은 당신이 사용하는 경우 목록의 문자열 변수 요소가 정의되어 있습니다 from <module> import *
모듈을 수입하는 것은 내보낼 수 있습니다 때 (변수, 함수, 클래스 등을 대신하여 여기에) 기호를.
밤 들어, 다음 코드를 foo.py
명확하게 도출 기호 bar
, baz
__all__ = ' 바 ' , ' 바즈 ' ] WAZ = 5 바 = 10 데프 바즈 () : 창 ' 바즈
가져 오기는 다음을 달성 :
에서 foo는 가져 오기 * 인쇄 바 인쇄 바즈의 # "WAZ는"모듈에서 파생되지 않기 때문에 __all__의 어떤 정의가 없기 때문에 다음 코드는, 예외가 발생합니다 인쇄 WAZ는
당신이 넣을 경우 foo.py
에 __all__
주석, 다음 코드는 위의 문제가없는 실행, import *
기본 동작은 주어진 공간에서 (민간 변수 물론 제외하고 밑줄) 모든 심볼을 내보내는 것입니다.
참고 __all__
에만 영향을 from <module> import *
이 방법으로 가져 오기를 from <module> import <member>
가져 오기 및 방법의 영향은 여전히 외부에서 가져올 수 없습니다.