Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/358.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/matlab/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
从Python运行MATLAB_Python_Matlab - Fatal编程技术网

从Python运行MATLAB

从Python运行MATLAB,python,matlab,Python,Matlab,我在自学python和matlab编程。我需要用matlab运行我用python编写的两个函数 我遵循了pymatlab和python(x,y)的基本安装说明。当我尝试使用以下代码创建MATLAB会话时: import pymatlab session = pymatlab.session_factory() 我得到以下错误: Exception AttributeError: "'MatlabSession' object has no attribute 'engine'" in <

我在自学python和matlab编程。我需要用matlab运行我用python编写的两个函数

我遵循了pymatlab和python(x,y)的基本安装说明。当我尝试使用以下代码创建MATLAB会话时:

import pymatlab
session = pymatlab.session_factory()
我得到以下错误:

Exception AttributeError: "'MatlabSession' object has no attribute 'engine'" in <bound method MatlabSession.__del__ of <pymatlab.matlab.MatlabSession object at 0x03654AF0>> ignored

Traceback (most recent call last):
  File "<pyshell#1>", line 1, in <module>
    session = pymatlab.session_factory()
  File "C:\Python27\lib\site-packages\pymatlab\sessionfactory.py", line 51, in session_factory
    session = MatlabSession(path=basedir,bufsize=output_buffer_size)
TypeError: __init__() got an unexpected keyword argument 'path'
Exception AttributeError:“'MatlabSession'对象在忽略中没有属性'engine'”
回溯(最近一次呼叫最后一次):
文件“”,第1行,在
session=pymatlab.session\u factory()
文件“C:\Python27\lib\site packages\pymatlab\sessionfactory.py”,第51行,会话工厂中
session=MatlabSession(path=basedir,bufsize=output\u buffer\u size)
TypeError:\uuuu init\uuuuuuuuu()获取了意外的关键字参数“path”

救命啊

这是一个需要在windows平台上修复的bug。您可以打开文件“C:\Python27\lib\site packages\pymatlab\sessionfactory.py”,找到第51行,删除参数前缀“path=”

变成

MatlabSession(basedir,bufsize=output_buffer_size) 

然后您就可以享受pymatlab了。

这似乎是一个兼容性问题。哪个ML版本、哪个python版本和哪个操作系统?丹尼尔,谢谢你的快速响应-我不知怎么错过了!我运行的是64位版本的windows,但不幸的是32位版本的MATLAB、Python、numpy和pymatlab。我相信官方支持的版本是32位的。在上一个版本中,你可以使用这个补丁(到目前为止,这个补丁还没有发布)
MatlabSession(basedir,bufsize=output_buffer_size)