imports a python module at runtime Args: modname: The module name in the scope message: The display message in case of error Raises: ImportError: If the module cannot be imported at runtime
(modname: str, message: str = "")
| 46 | |
| 47 | |
| 48 | def dynamic_import(modname: str, message: str = "") -> None: |
| 49 | """ |
| 50 | imports a python module at runtime |
| 51 | |
| 52 | Args: |
| 53 | modname: The module name in the scope |
| 54 | message: The display message in case of error |
| 55 | |
| 56 | Raises: |
| 57 | ImportError: If the module cannot be imported at runtime |
| 58 | """ |
| 59 | if modname not in sys.modules: |
| 60 | try: |
| 61 | import importlib |
| 62 | |
| 63 | module = importlib.import_module(modname) |
| 64 | sys.modules[modname] = module |
| 65 | except ImportError as x: |
| 66 | raise ImportError(message) from x |
no outgoing calls