【问题标题】:Python using import in a function, import content of variable and not its name?Python 在函数中使用导入,导入变量的内容而不是其名称?
【发布时间】:2013-11-13 14:13:05
【问题描述】:

我有一个检查模块是否安装的功能,如果没有安装它。我通过一个函数传递扩展名。但是如何阻止它尝试导入变量名称并使用其内容?

例子:

def importExtension(extension):
     try:
        import extension
    except:
        Do stuff
importExtension("blah")

【问题讨论】:

  • 如果我正确理解您的问题,您可以在import 之后添加del extension

标签: python function import


【解决方案1】:

使用importlib (backport)。

import importlib

def importExtension(extension):
     try:
        importlib.import_module(name)
    except:
        Do stuff
importExtension("blah")

另外,引用有关__import__(..) 的文档:

这是日常 Python 编程中不需要的高级函数,与 importlib.import_module() 不同。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-07-13
    • 1970-01-01
    • 2020-04-26
    • 2017-10-15
    相关资源
    最近更新 更多