检查一个变量是否存在于工作区 MATLAB 中

Mehak Mubarik 2023年1月30日 2022年5月11日
  1. 在不使用 MATLAB 中的任何内置函数的情况下检查工作区中观察下的变量
  2. 使用 MATLAB 中的 Exist 函数检查工作区中观察下的变量
检查一个变量是否存在于工作区 MATLAB 中

我们将研究不同的方法来检查 MATLAB 工作区中观察变量是否存在。

变量可以是从本地变量到函数的任何内容。我们可以使用 exist 函数和不使用函数来检查变量是否存在。

exist 函数给出从 0 到 9 的数字。每个数字都有其含义,具体取决于我们搜索的变量。

让我们从检查工作区中观察变量的存在开始,而不使用 MATLAB 中的任何内置函数。

在不使用 MATLAB 中的任何内置函数的情况下检查工作区中观察下的变量

为此,我们将根据我们的可变需求设计一个函数。让我们的变量 abcd 等于 1

我们将函数定义为 check_workspace_variables()。提供给函数的参数将是我们想要查看的变量的名称。

a = 1;
b = 1;
c = 1;
d = 1;

check_workspace_variables('d')
check_workspace_variables('b')
check_workspace_variables('c')
check_workspace_variables('e')

function our_output = check_workspace_variables(variable_check)
% Check to see if a variable exists in the Base Workspace

does_string_exists = sprintf('exist(''%s'')',variable_check);
our_workspace_variables = evalin('base',does_string_exists);

if our_workspace_variables == 1 % If variable exists in our workspace in MATLAB
disp('Is Present in our Workspace')
our_output = 1 ;
else % If variable doesnot exist in our workspace in MATLAB
disp('Is Absent from our Workspace')
our_output = 0 ;
end
end

输出:

check_variable_presence
Is Present in our Workspace

ans = 1

Is Present in our Workspace

ans = 1

Is Present in our Workspace

ans = 1

Is Absent from our Workspace

ans = 0

在此示例中,如果你仔细查看代码中定义的变量,我们会检查变量 abce

任何名为 e 的变量都不存在。这就是为什么三个答案返回为 1,最后一个返回为 0

使用 MATLAB 中的 Exist 函数检查工作区中观察下的变量

让我们通过使用 magic() 函数创建一个随机矩阵并将其命名为 our_variable 来理解这个概念。我们将使用 exist 函数来检查 our_variable 是否存在于我们在 MATLAB 的工作区中。

our_variable = magic(5)
exist our_variable

输出:

our_variable =

    17    24     1     8    15
    23     5     7    14    16
     4     6    13    20    22
    10    12    19    21     3
    11    18    25     2     9
 
ans = 1

根据 MA​​TLAB 中函数的预定义数值输出,1 表示我们变量的 name 存在于 MATLAB 的工作区中。

Mehak Mubarik avatar Mehak Mubarik avatar

Mehak is an electrical engineer, a technical content writer, a team collaborator and a digital marketing enthusiast. She loves sketching and playing table tennis. Nature is what attracts her the most.

LinkedIn

相关文章 - MATLAB Variable