"__import__"를 사용하여 문자열 변수에서 모듈 가져오기
matplotlib(MPL) 라이브러리 내의 특정 하위 모듈을 문서화하려고 하면 다음과 같은 문제가 발생할 수 있습니다. 문자열에서 이러한 하위 모듈을 가져오는 데 필요합니다. 그러나 "__import__" 함수를 사용하면 표준 가져오기 문에 비해 예상치 못한 결과가 발생할 수 있습니다.
문제:
"__import__"를 사용하여 하위 모듈 가져오기(예: __import__( 'matplotlib.text'))가 예상대로 하위 모듈의 내용을 완전히 로드하지 않습니다. "__import__"와 일반 가져오기에서 얻은 속성 목록을 비교해 보면 "__import__"에는 외부 요소와 함께 matplotlib의 기본 정의가 포함되어 있지만 대상 하위 모듈의 중요한 클래스가 부족하다는 것이 분명합니다.
해결책:
"__import__"를 사용하여 문자열에서 하위 모듈을 로드하려면 빈 값을 지정하세요. list를 두 번째 인수로 사용(fromlist):
import matplotlib.text as text x = dir(text) i = __import__('matplotlib.text', fromlist='') y = dir(i)
이 수정된 코드는 원하는 하위 모듈을 효과적으로 로드하여 예상되는 속성 목록을 생성합니다.
또는 Python 버전 3.1 이상에서 하나 importlib를 활용할 수 있습니다 모듈:
import importlib i = importlib.import_module("matplotlib.text") y = dir(i)
참고:
위 내용은 `__import__`가 Matplotlib 하위 모듈을 완전히 가져오지 못하는 이유는 무엇이며 어떻게 해결할 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!