Python不加载一个MATLAB引擎模式会话

9的观点(30天)
我开始MATLAB从一个Python脚本,使用以下命令:
进口matlab.engine
eng = matlab.engine.start_matlab ()#得到MATLAB
eng.desktop (nargout = 0)#互动MATLAB会话
然而,Python命令开始MATLAB会话无法识别。例如,pyversion回报
版本:
可执行:
库:
家:
isloaded: 0
当MATLAB是开始“正常的”(如通过桌面快捷方式),pyversion给了一个有意义的输出,可以运行在MATLAB中Pythin命令。
动机在MATLAB使用Python会话从Python将MATLAB输出结果通过py Python数据类型。和类似的命令列表。例如我不想得到类似的matlab。双Python。
虽然可以规避这个问题通过巧妙地将MATLAB的输出转换为细胞,然后合并结果列表在Python中,这将是有趣的澄清为什么Python在MATLAB在这种特殊情况下不能访问。
我想通过一个n除以2矩阵从MATLAB作为Python列表集合(即每个矩阵行应该成为二元数组)。目前我在做以下:
col1 = num2cell (uint32 (matr (: 1), 2);
col2 = num2cell (uint32 (matr (:, 2)), 2);
然后在Python (MATLAB函数的输出检索关口在Python中):
col1 =关口[0]
col2 =关口[1]
lst =列表(zip (col1, col2))
2的评论
Ilya Tyuryukanov
Ilya Tyuryukanov 2016年6月28日
非常感谢你这个评论,然后我将采取第二个解决方案,我已经提到的,即输出转换为细胞数组和集合在Python中。我已经更新了的问题给我正在做什么。

登录置评。

接受的答案

罗伯特Snoeberger
罗伯特Snoeberger 2016年6月28日
这有帮助吗?
进口sys
eng.pyversion (sys。可执行文件,nargout = 0)
1评论
Ilya Tyuryukanov
Ilya Tyuryukanov 2016年6月29日
eng.pyversion (“C: \ \ Python34 \ \ pythonw。exe”, nargout = 0)确实有帮助。

登录置评。

更多的答案(0)

类别

找到更多的在从Python调用MATLAB帮助中心文件交换

社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!

开始狩猎!