You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

如何在Matlab中显示对象或变量的名称与取值?

在MATLAB中显示变量名称与取值的实用方法

嘿,我来帮你解决这个问题!先分两部分来拆解:显示变量取值是很直接的,而显示变量名称因为MATLAB的特性需要点小技巧,下面给你详细说明:

一、显示变量的取值

这部分超简单,有两种常用方式:

  • 直接在命令行敲变量名 target_position 然后回车,MATLAB会直接输出它的取值
  • disp(target_position) 函数,同样会打印出变量的内容,适合在脚本里批量输出

二、显示变量的名称

MATLAB的变量本身不会存储自己的名称(毕竟它只是内存地址的一个引用),所以得用下面几种方法来实现:

方法1:用inputname函数(适合函数内获取输入变量名)

如果你把变量传入自定义函数,inputname能帮你拿到它的原始名称,示例代码如下:

function displayVarInfo(inputVar)
    % 获取输入变量的名称
    varName = inputname(1);
    % 输出名称和取值
    fprintf('变量名称:%s\n', varName);
    fprintf('变量取值:%s\n', num2str(inputVar));
end

% 测试一下
obj = [5, 15]; % 先给对象赋值
target_position = obj;
displayVarInfo(target_position);

运行后会输出:

变量名称:target_position
变量取值:5 15

方法2:用who/whos查看工作区变量名

如果只是想查看当前工作区里的所有变量(包括target_position),直接在命令行输入:

  • who:只输出所有变量的名称列表
  • whos:输出变量的名称、大小、数据类型等详细信息

比如输入who后,会显示:

Your variables are:
obj target_position

方法3:手动关联名称与取值(脚本内临时使用)

如果只是在脚本里需要临时绑定变量名和取值,可以用结构体手动存储:

obj = [5, 15];
target_position = obj;

% 手动创建映射
varMap = struct('name', 'target_position', 'value', target_position);
disp(['变量名称:', varMap.name]);
disp(['变量取值:', num2str(varMap.value)]);

这样就能轻松实现你想要的显示变量名称和取值的需求啦~

内容的提问来源于stack exchange,提问作者CaroleGE

火山引擎 最新活动