for循环变量名MATLAB

for循环变量名MATLAB,matlab,for-loop,Matlab,For Loop,如果我有三个变量叫做 MATLAB中的var1 var2和var3(我不想创建它们,我有它们) 我需要调用它们中的每一个,并将它们设置为1 我会写 var1 = 1; var2 = 1; var3 = 1; 但是我可以使用for循环吗 例如(不运行的) 那是。您可以使用数组或单元格数组var,您可以将其索引为var(i)或var{i},Luis的意思是,您可以通过修改最初创建变量的代码或运行var{1}=var1,将var1,var2,重新定义为var{1},var{2},;var{2}=va

如果我有三个变量叫做

MATLAB中的var1 var2和var3(我不想创建它们,我有它们)

我需要调用它们中的每一个,并将它们设置为1

我会写

var1 = 1;
var2 = 1;
var3 = 1;
但是我可以使用for循环吗

例如(不运行的)


那是。您可以使用数组或单元格数组
var
,您可以将其索引为
var(i)
var{i}
,Luis的意思是,您可以通过修改最初创建变量的代码或运行
var{1}=var1,将
var1,var2,
重新定义为
var{1},var{2},
;var{2}=var2;。。。;清除var1 var2。然后,对于i=1:numel(var),var{i}=1,循环变成
;结束
。虽然这在技术上是有效的,但此解决方案背后的思维方式可能会导致OP(和其他读者)开始大量使用
assignin()
s、
eval()
s、globals等来散布他们的代码。这最终会导致安全风险、性能下降、不可读代码、调试噩梦等。我同意。我只是向@user30609提供了关于他的问题的答案。
for i=1:3
var&i=1
end
for i = 1:3
assignin('base',['var',num2str(i)],1)
end