В MATLAB имена переменных играют решающую роль в хранении данных и доступе к ним. Иногда вам может потребоваться программно оценить имя переменной во время выполнения. В этой статье блога мы рассмотрим различные методы достижения этой цели, а также примеры кода. Давайте погрузимся!
Методы оценки имен переменных MATLAB:
- Использование функции
eval:
Функцияevalв MATLAB позволяет оценивать строку как выражение MATLAB, которое включает имена переменных. Вот пример:
variableName = 'myVariable';
value = 42;
eval(['result = ', variableName, ';']);
disp(result);
- Использование команды
whos:
Командаwhosпредоставляет информацию о переменных в рабочей области, включая их имена. Вы можете перебирать выходные данные, чтобы найти нужное имя переменной. Вот пример:
variableName = 'myVariable';
value = 42;
vars = whos;
for i = 1:numel(vars)
if strcmp(vars(i).name, variableName)
result = eval(vars(i).name);
disp(result);
break;
end
end
- Использование команды
who:
Командаwhoвыводит список переменных в текущей рабочей области. Вы можете использовать его вместе с функциейevalinдля оценки имени переменной. Вот пример:
variableName = 'myVariable';
value = 42;
varList = who;
for i = 1:numel(varList)
if strcmp(varList{i}, variableName)
result = evalin('base', varList{i});
disp(result);
break;
end
end
- Использование функции
exist:
Функцияexistпроверяет, существует ли переменная или функция в рабочей области. Вы можете использовать его, чтобы определить, допустимо ли имя переменной. Вот пример:
variableName = 'myVariable';
value = 42;
if exist(variableName, 'var') == 1
result = eval(variableName);
disp(result);
else
disp('Variable does not exist.');
end
Функция
, команда whos, команда who, функция exist, доступ к динамическим переменным