diff --git a/snippets/dev/auto_install_python_pip_module.py b/snippets/dev/auto_install_python_pip_module.py new file mode 100644 index 0000000..7c47358 --- /dev/null +++ b/snippets/dev/auto_install_python_pip_module.py @@ -0,0 +1,19 @@ +## Auto install python module + +import sys +import importlib +import subprocess + +def install_module(module_name, package_name=None): + '''Install a python module with pip or return it if already installed''' + try: + module = importlib.import_module(module_name) + except ModuleNotFoundError: + print(f'Installing Module {module_name} ....') + + subprocess.call([sys.executable, '-m', 'ensurepip']) + subprocess.call([sys.executable, '-m', 'pip', 'install', package_name or module_name]) + + module = importlib.import_module(module_name) + + return module