我获得了 ac 库 wave.so,定义了一个函数接口,我按照这里的指南进行操作
https://stackoverflow.com/a/5868051/2789784
它有效。但是,当我将脚本制作为文件 MyModule.py 并尝试通过
import MyModule
然后它给了我这个错误。
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: dynamic module does not define init function (initwave)
为什么会这样?我应该如何解决它?
FIXED:所以我在同一个文件夹中同时拥有 MyModule.py 和 MyModule.so,python 尝试加载 MyModule.so 而不是 MyModule.py,当然他不能成功,将 MyModule.py 的名称更改为 wave.py和
import wave
解决问题。所以基本上如果你只是想调用一些 c++ 库函数,你真的只需要一个 python 脚本包装器,就是这样,没有 c 编程。我也可以将我的 c++ 共享库用于其他应用程序。