Python `__import__` 내장 함수

Python 3 설명서에서 발췌

이 함수는 import 문에 의해 호출됩니다. import 문의 의미를 변경하기 위해 [...] 대체될 수 있지만, import 훅을 사용하는 것이 일반적으로 더 간단하므로 그렇게 하는 것은 강력히 권장되지 않습니다 [...]. 직접 __import__() 를 사용하는 것 또한 importlib.import_module() 을 사용하는 것이 권장되므로 지양됩니다.

소개

__import__() 함수는 import 문에 의해 호출되는 근본적인 함수입니다. 직접 사용하는 것이 가능하지만, 일반적으로 권장되지 않습니다. 동적으로 모듈을 가져오려면 importlib.import_module() 함수를 사용하는 것이 권장되는 접근 방식입니다.

예시

__import__()를 사용하여 math 모듈을 동적으로 가져오는 방법은 다음과 같습니다.

# 'math' 모듈을 동적으로 가져오기
math_module = __import__('math')

# 이제 일반적인 import 처럼 사용할 수 있습니다
print(math_module.sqrt(4))
2.0

하지만, importlib를 사용한 권장 방식은 다음과 같습니다.

import importlib

math_module = importlib.import_module('math')
print(math_module.sqrt(4))
2.0

관련 링크