我下面有一段Python代码,它将快速遍历两个数组并打印输出。在MatLab中,这段代码的等价物是什么?
x = [1, 2, 3, 4, 5] y = [1, 2, 3, 4, 5] for i, j in zip(x, y): print(i, j)
vxqlmq5t1#
你可以做两件事。在MatLab中,最自然的方法是迭代索引:
x = [1, 2, 3, 4, 5]; y = [10, 20, 30, 40, 50]; for i = 1:numel(x) disp([x(i), y(i)]); end
另一种方法是连接这两个数组。MatLab的for循环遍历数组的列:
for i = [x;y] disp(i.'); end
请注意,这种替代方法的效率通常要低得多,因为串联需要复制所有数据。
az31mfrm2#
你可以通过iterate的索引,MatLab喜欢for循环。
iterate
for
matlab for i=1:5 x(i), y(i) end
k75qkfdt3#
对于matlab,没有与pythonzip函数等效的函数;如果您正在寻找类似的函数,我建议您查看this SO answer about creating a zip function in MATLAB.否则,遍历索引是可行的。
zip
% Create lists x = [1 2 3 4 5]; y = [1 2 3 4 5]; % Assuming lists are same length, iterate through indices for i = 1:length(x) disp([x(i) y(i)]); end
3条答案
按热度按时间vxqlmq5t1#
你可以做两件事。
在MatLab中,最自然的方法是迭代索引:
另一种方法是连接这两个数组。MatLab的for循环遍历数组的列:
请注意,这种替代方法的效率通常要低得多,因为串联需要复制所有数据。
az31mfrm2#
你可以通过
iterate
的索引,MatLab喜欢for
循环。k75qkfdt3#
对于matlab,没有与python
zip
函数等效的函数;如果您正在寻找类似的函数,我建议您查看this SO answer about creating a zip function in MATLAB.否则,遍历索引是可行的。