На самом деле у меня проблема при вызове скрипта Matlab из Python.
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", который является float и массивом целочисленного "состояния", например, sr =34,31 и состояние = [1,2,5].Функция test_func () хорошо работает на Matlab, но когда я запускаю это в Python из терминала (python test_matlab_engine.py), я получил следующую ошибку:
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
Кто-нибудь, пожалуйста, дайте мне решение.Заранее большое спасибо.