我使用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