파이썬 라이브러리 __all__ 공통 변수를하고있다

그것은 당신이 사용하는 경우 목록의 문자열 변수 요소가 정의되어 있습니다  from <module> import * 모듈을 수입하는 것은 내보낼 수 있습니다 때 (변수, 함수, 클래스 등을 대신하여 여기에) 기호를.

밤 들어, 다음 코드를  foo.py 명확하게 도출 기호  barbaz

__all__ = ' ' , ' 바즈 ' ] 

WAZ = 5  = 10
 데프 바즈 () :  ' 바즈

가져 오기는 다음을 달성 :

에서 foo는 가져 오기 * 인쇄 인쇄 바즈의 # "WAZ는"모듈에서 파생되지 않기 때문에 __all__의 어떤 정의가 없기 때문에 다음 코드는, 예외가 발생합니다 인쇄 WAZ는




당신이 넣을 경우  foo.py 에  __all__ 주석, 다음 코드는 위의 문제가없는 실행,  import * 기본 동작은 주어진 공간에서 (민간 변수 물론 제외하고 밑줄) 모든 심볼을 내보내는 것입니다.

참고  __all__ 에만 영향을  from <module> import * 이 방법으로 가져 오기를  from <module> import <member> 가져 오기 및 방법의 영향은 여전히 외부에서 가져올 수 없습니다.

추천

출처www.cnblogs.com/leadership/p/11649879.html