从另一个本身导入不可用模块的文件导入函数?

时间:2017-07-27 01:20:40

标签: python

我在a.py中写了一些函数。我使用泛型 python二进制文件运行a.py。在a.py内,我有

import some_module

def simple_function():
    ...

def complex_function():
    some_module.some_func()

现在,我想将simple_function()导入b.py,这必须与另一个python(软件捆绑安装)一起运行,而且这个python没有安装some_module

当我使用软件捆绑的python运行b.py(包含行from a import simple_function)时,我收到了此错误,正如预期的那样。

ImportError: No module named 'some_module'

周围有办法吗?如您所见,simple_function()不需要some_module

我能想到的一个解决方案是将import语句放在complex_function

def simple_function():
    ...

def complex_function():
    import some_module
    some_module.some_func()

但我确信傻瓜和格式跳棋会抱怨它。更好的解决方案?

1 个答案:

答案 0 :(得分:1)

解决方案是将复杂功能单独拆分为一个单独的模块。

在模块中导入函数时,您将导入整个模块。

其他解决方案是在其他python安装中安装some_module ...