python - 如何使用 importlib 在 python 中动态导入模块?

标签 python python-3.x import

在 python 3.6.2 中,我尝试使用 importlib 导入模块。我可以直接将模块导入为:

from scripts import config_A_2

但是当尝试使用 importlib 时,如下所示

module = importlib.import_module('config_A_2', 'scripts')

我得到一个错误

 File "/usr/local/Cellar/python3/3.6.2/Frameworks/Python.framework/Versions/3.6/lib/python3.6/importlib/__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 978, in _gcd_import
  File "<frozen importlib._bootstrap>", line 961, in _find_and_load
  File "<frozen importlib._bootstrap>", line 948, in _find_and_load_unlocked    
ModuleNotFoundError: No module named 'config_A_2'

也许我以错误的方式使用了importlib

信息:它是一台 Mac...

最佳答案

您可以使用相对导入:

importlib.import_module('.config_A_2', 'scripts')

或者绝对的:

importlib.import_module('scripts.config_A_2', 'scripts')

关于python - 如何使用 importlib 在 python 中动态导入模块?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55439473/

相关文章:

java - 为什么不使用像 java.util.* 这样的通配符导入?

c - 错误 : conflicting types for ‘atoll’

原始类型的python按引用调用

python - 术语:Argv、调用程序

python - 如何仅标准化数据帧的一列,同时保持其他列不受影响?

python - 您如何配置 Django 3 以与 MySql 5 一起使用?

python - sqlalchemy 对动态惰性关系的条件多重过滤器

python - 使用空间连接子查询更新 postgis 表

python - 将 Ruby 中的 json 响应移植到 Python

python - 有条件进口的良好做法