imp.find_module:windows中的一个模块是什么构成的,它可以加载一个dll吗?

时间:2016-12-20 18:09:57

标签: python python-import

我正在尝试运行一个在linux中运行正常的python模块,但是在Windows中输出

  

ImportError:没有名为' _foodeviceapi'

的模块

检查代码,尝试执行时失败

            fp, pathname, description = imp.find_module('_foodeviceapi', [dirname(__file__)])

检查它搜索到的目录我发现' _foodeviceapi.so'和其他.so文件,我想是用于linux,但没有相应的windows ...我从Matlab实现找到了相应的foodeviceapi.dll

然而,当我尝试使用imp.find_module时,我似乎无法找到dll ...这是因为我需要一个静态库吗?还是我做错了什么?是否可以加载DLL?什么是文件imp.find_module的正确扩展可以在Windows中找到?文档似乎没有提及。

在这个命令之后,讨论中的python模块大概是:

    if fp is not None:
        try:
            _mod = imp.load_module('_foodeviceapi', fp, pathname, description)
        finally:
            fp.close()

并定义类:

class SwigPyIterator(_object):
    ...
    def __next__(self) -> "PyObject *" : return _mod.SwigPyIterator___next__(self)
    ...

等。 (它是一大块代码,只是展示了一些例子)

0 个答案:

没有答案