私はいくつかのPythonコードをMatlabに翻訳しています.PythonタプルのアンパックをMatlabに翻訳する最良の方法は何かを理解したいと思っています.
この例では、 aBody
はコンストラクターが入力として 2 つの関数を受け取るクラスです。
次のpythonコードがあります:
X1 = lambda t: cos(t)
Y1 = lambda t: sin(t)
X2 = lambda t: cos(t) + 1
Y2 = lambda t: sin(t) + 1
coords = ((X1,Y1), (X2,Y2))
bodies = [Body(X,Y) for X,Y in coords]
これは、次の Matlab コードに変換されます
X1 = @(t) cos(t)
Y1 = @(t) sin(t)
X2 = @(t) cos(t) + 1
Y2 = @(t) sin(t) + 1
coords = {{X1,Y1}, {X2,Y2}}
bodies = {}
for coord = coords,
[X,Y] = deal(coord{1}{:});
bodies{end+1} = Body(X,Y);
end
ボディの場所
classdef Body < handle
properties
X,Y
end
methods
function self = Body(X,Y)
self.X = X;
self.Y = Y;
end
end
end
Matlab で python コードの最後の行を表現するためのより良い、よりエレガントな方法はありますか?