【发布时间】:2019-06-20 23:27:47
【问题描述】:
其实我从 Python 调用 Matlab 脚本时遇到了问题。
import matlab.engine
import os
import random
import numpy as np
a=[str(random.randint(1,3)) for _ in range(3)]
print(a)
eng=matlab.engine.start_matlab()
eng.cd("/Users/dha/Documents/MATLAB/test-matlab/",nargout=0)
sr, state=eng.test_func()
print(sr)
print(state)
实际上我想返回“sr”,它是一个浮点数和一个整数“状态”数组,例如sr = 34.31 和状态 = [1,2,5]。函数 test_func() 在 Matlab 上运行良好,但是当我从终端 (python test_matlab_engine.py) 在 Python 中运行它时,我收到以下错误:
Traceback (most recent call last):
File "test_matlab_engine.py", line 10, in <module>
sr, state=eng.mabuc_drl(a)
TypeError: 'float' object is not iterable
任何人请给我解决方案。非常感谢您。
【问题讨论】:
-
您也可以编辑以共享 MATLAB 代码吗?当我看不到引发异常的函数时,很难为您提供帮助
标签: python-2.7 matlab typeerror matlab-engine