首页 > 解决方案 > 有没有办法在matlab中增加一个非数组整数?

问题描述

我的问题的一个部分问题是我不知道足够的计算机科学术语来简洁地问它,所以希望这个示例代码有助于:

说我有这个代码:

    a1 = 1;
    a2 = 2;
    a3 = 3;

我想变得非常懒惰,并在“for循环”中增加变量“a”。

    for(i=1:3)
            ai = i
    end

这应该相等;a1 = 1,a2 = 2,a3 = 3。这在matlab中可能吗?这个叫什么?

标签: matlab

解决方案


我想你可以尝试assignin如下

for i = 1:3
  assignin('base',sprintf("a%d",i),i);
end

如果您在函数中使用它,您可能需要

for i = 1:3
  assignin('caller',sprintf("a%d",i),i);
end

推荐阅读