importlib란?
importlib 는
개발자가 Python에서 패키지 나 모듈을 로드 및 import 하는 작업들에서
다양한 상호작용을 할 수 있도록 지원하는 API를 제공함.
이를 사용하여,
동적으로 기존의 import된 모듈을 다시 import하여 갱신하는 등의 처리를 할 수 있음.
(Python Interpreter를 재시작하거나 Python 프로그램을 재시작하지 않고, 동적으로 import 된 module을 관리.
https://dsaint31.tistory.com/527
importlib.util.find_spec() 이란?
importlib.util.find_spec()
함수는
- module의 specification에 접근(or 검색)하는 데 사용됨.
- 현재 시스템에서 해당 moudle이 존재하는지, 어디에 위치하는지 등을 확인하는 데 사용됨.
중요한 점은 대상 module에 대한 실제 import가 일어나지 않는다는 점임.
주로 제공하는 정보는 다음과 같음.
- module의 존재 유무
- module의 설치 위치 (
__init__.py
)
Example
import importlib
import importlib.util
import traceback
# Check if a module exists
module_name = "numpy"
try:
module_spec = importlib.util.find_spec(module_name)
print(f"{module_spec.name} module exists.")
print(f"{module_spec.name} module is located at {module_spec.origin}.")
except Exception as e:
print(f"{module_name} module does not exist.")
# traceback.print_exc()
'Python' 카테고리의 다른 글
[DL] Tensor: dtype 변경(casting) 및 shape 변경. (0) | 2024.03.15 |
---|---|
[DL] Tensor 간의 변환: NumPy, PyTorch, TensorFlow (0) | 2024.03.15 |
[Programming] glue code and (language) binding (0) | 2024.03.04 |
[Python] Slash and Asterisk for Function Parameters (1) | 2024.02.04 |
[Python] mutable and immutable: Mutability (0) | 2024.02.03 |