将Matlab引擎与python 3.5一起使用时出现TimeoutError导入错误

时间:2018-06-27 13:40:54

标签: python matlab matlab-engine

我正在尝试使用matlab.engine在python脚本中运行用matlab编写的函数。

我第一次运行脚本时一切正常,但是当我再次尝试运行脚本时,在导入Matlab引擎时出现错误“ ImportError:无法导入名称'TimeoutError'”。重新启动内核使我可以再次运行脚本。我还使用了 import matlab.engine ,而不是从matlab.engine import 来避免循环导入。

关于如何解决此问题的任何建议? 我正在使用Ubuntu 16.04并使用spyder。

非常感谢!

1 个答案:

答案 0 :(得分:0)

我收到类似的运行错误。但是尝试了几次之后,我发现对于相同的* .py手稿,import matlab.engineeng = matlab.engine.start_matlab()这个短语应该只实施一次

我评论了他们,通过这样做,我可以再次重新运行脚本* .py。

否则,它将发布错误

  

ImportError:无法导入名称“ TimeoutError”。

我认为使用import matlab.engine开始新的MATLAB®流程就像在我们关门之前先打开一扇门,每个人都可以进入房间或​​一次又一次出门,但不需要打开再次门,因为它尚未关闭。

“重新启动内核”就像自动关闭门一样(Python停止了引擎及其MATLAB进程)。