python 匯入模組(使用程式匯入模組,並簡單對錯誤處理)
阿新 • • 發佈:2018-11-05
在python 中如果需要匯入一些模組,可以使用import xxx 或者使用from xx import xx 。只有這一種方式嗎,當然不是,還有一種就是使用程式碼將一些模組匯入。使用到的是 ` importlib ` 這個模組。
一般用法:
import importlib
importlib.import_module("module_name")
如果是要在某些專案中使用,可以參考下面的方式,其中包含了錯誤的一些處理。
# coding=utf8 from __future__ import print_function __author__ = 'Administrator' import six import importlib modules = [ "module_test", "x" ] def _py_err_msg(module): if six.PY2: err_msg = "No module named %s" % module.split(".")[-1] else: err_msg = "No module named '%s'" % module return err_msg def _handle_error(errors, log_all=True): if not errors: return err_msg = "SKIP IMPORT MODULES {num_missing} " print(err_msg.format(num_missing=len(errors))) for _module, error in errors: err_str = str(error) if err_str != _py_err_msg(_module): print("From module %s ", _module) raise error if log_all: print("Did not import module: %s; Cause: %s" % (_module, err_str)) _errors = [] for _module in modules: try: importlib.import_module(_module) except ImportError as error: _errors.append((_module, error)) _handle_error(_errors) # 測試這個匯入模組,只需要把這個模組 匯入 不會break 就表示 這個匯入模組正常
可以簡單執行一下這段程式碼:
結果類似下面: