我使用Oct2Py为了在我的Python代码中使用一些M文件。比方说,我有这个简单的Matlab的功能:Oct2Py只返回第一个输出参数
function [a, b] = toto(c);
a = c;
b = c + 1;
end
,如果我把它称为八度会发生什么明显:
>> [x,y] = toto(3)
x = 3
y = 4
现在,如果我把它在Python,使用oct2py:
from oct2py import octave
my_dir = "D:\\My_Dir"
octave.addpath(my_dir)
a,b = octave.toto(3)
这将返回:
TypeError: 'int' object is not iterable
似乎octave.toto(n)只返回第一个值,当我期望两个...任何人都可以向我解释我应该做什么?由于
我明白不同之处!但是,此行返回: TypeError:'int'对象不可迭代。 就像我写道:[a,b] = octave.test(3)...它真的看起来像octave.test(n)给出一个单一的输出... – Telergoel
@Telergoel它绝对应该工作。你能否将你的函数名改为与核心库函数不冲突的东西?此外,请显示您正在尝试使用的确切代码 – Suever
我更改了函数的名称,不再存在冲突,但仍然是TypeError。如果需要,我可以分享我的确切代码行,但我真的用上面的简单代码进行测试,并且它确实不起作用。 – Telergoel