原创文章,欢迎转载。转载请注明:转载自 祥的博客

原文链接:https://blog.csdn.net/humanking7/article/details/80628757

1. 问题引出
2 情况1: 用字符串作为变量名-eval()
3. 情况2: 变量名转化为字符串-inputname()
  1. 问题引出

由于Matlab的m语言是解释性语言,所以可以在代码运行过程中用字符串做为变量名。有时候我们需要知道变量在程序中的名字,就是将变量名转化为字符串。
2 情况1: 用字符串作为变量名-eval()

    第一个字符串str_var = 'varNumber'以字符串 varNumber为变量名声明一个变量

用eval()函数可以轻松搞定:

str_var = 'varNumber';
eval( [str_var, '= 10']);

运行后可以看到工作空间多了一个名叫varNumber的变量,值为10。

eval()的作用解释起来就是:运行了在Matlab中运行了 [str_var, ‘= 10’] 这段代码,即就是:varNumber = 10。
3. 情况2: 变量名转化为字符串-inputname()

定义一个数值类型变量 numberA = 123;。
现在我需要输出这个变量名,也就是字符串'numberA'

这需要自己写一个函数getVarName(),该函数的输入为要被转化的变量,输出为一个字符串,即就是该变量的变量名。

函数代码( getVarName.m文件 )

%% 将变量的变量名转换为字符串
function [ str_varName ] = getVarName( var )str_varName = sprintf('%s', inputname(1));end

测试代码:

numberA = 123;
str_varName = getVarName(numberA);
disp(['变量的名字为: ' ,str_varName])
class(str_varName)

Matlab里面对其进行了解释,这个需求虽然小众,但还是有用的,比如我要把所有的变量和输入打印到文件中(将变量逆向转化为m文件,有时用m文件比mat文件更容易查询数据的问题

    DescriptionThis command can be used only inside the body of a function.inputname(argnum) returns the workspace variable name corresponding to the argument number argnum. If the input argument has no name (for example, if it is an expression instead of a variable), the inputname command returns the empty string (”)

转载:matlab 字符串和变量名互换相关推荐

  1. python 将字符串作为变量名

    1.使用字符串指代变量名. 比如说,有两个变量 a="bbb"和bbb={"c":1},引用a如何得到{"c":1},也就是a的值'bbb' ...

  2. python的变量名有哪些_【python字符串做变量名的方法有哪些?这些方法对python应用很重要】- 环球网校...

    [摘要]python的功能都是建立在代码之上的,不过你知道python字符串做变量名的方法有哪些?这些方法对python应用很重要,如果你想学好python,那么本文内容一定要自己试试,毕竟实践出真知 ...

  3. python字符串定义变量名_python 将字符串作为变量名

    原博文 2019-10-12 16:43 − Python中如何使用字符串当作变量名 > 1.使用字符串指代变量名.> 比如说,有两个变量 a="bbb"和bbb={& ...

  4. shell 使用字符串拼接变量名

    shell 使用字符串拼接变量名 # 定义好要用的变量 REMOTE_SERVER_dev: "gitlab-runner@192.168.1.6:/data/build"# 生成 ...

  5. python遍历字典键值做变量名 字符串做变量名

    目录 1. exec 2. vars() 3. 全局变量globals() 感谢! [简书]Python中如何将字符串作为变量名 1. exec exec执行字符串命令.目前var和globals都不 ...

  6. c++如何把字符串转为变量名_如何优雅地计算多变量

    作者:包寒吴霜 中科院心理所硕士在读(名字/人格/社会/文化心理学) 知乎:https://www.zhihu.com/people/psychbruce 社会科学研究经常会遇到"超多变量& ...

  7. php根据字符串生成变量名,PHP 自定义字符串中的变量名解析

    这样一个需求:页面的 title 可以在后台自定义,自定义内容中可能包含变量,变量用 {$var} 表示, 其中 $var 为变量名 将 title 字段存入数据库中,再提出来之后,用php自己的变量 ...

  8. python字符串常用方法变量名命名规范

    python变量名命名规范 python变量名命名规范 1.一般以字母(大写,小写字母均可以)开头,例如:myname,Myname 2.后面可以使用下划线_或者数字 例如:My_name 3.大小写 ...

  9. python字符串定义变量名_python基础-变量和字符串

    一.变量 变量的作用: 存储程序运行的结果,变量存储在内存之中,一个变量也就是在内存中开辟了一定的空间 变量可以存储什么? 变量可以存储不同的数据类型,可以为 整数.小数或者字符 变量的定义规范 a. ...

最新文章

  1. Ubuntu 16.04 安装后修改屏幕分辨率(xrandr: Failed to get size of gamma for output default)
  2. reboot 百度网盘资源
  3. 关于Mysql5.6半同步主从复制的开启方法【转】
  4. Spring Boot 2.4版本前后的分组配置变化及对多环境配置结构的影响
  5. DNS隐蔽通道 是可以通过dig 子域名来追踪其真实IP的
  6. [kubernetes] 解决k8s.gcr.io Image 导入导出 等问题
  7. ie6的png24问题
  8. 人到中年,别再挥霍你的“同情心”了
  9. 设计模式二:结构型模式
  10. 安装自带python3.6的Anaconda3,并安装tensorflow,导入Pycharm中使用
  11. Bash基础——快捷键
  12. PHP强大自适应OA协同办公系统源码 含CRM客户管理系统+内部聊天工具
  13. 日文輸入法学习和日文键盘图
  14. Jmeter---脚本录制
  15. 2017CS231n李飞飞深度视觉识别笔记(二)——图像分类
  16. 生活大爆炸第四季 那些精妙的台词翻译
  17. python祝福语_Python | 微信自动回复祝福语
  18. 【网络】之TCP/IP 网络模型有哪几层
  19. 【C语言】C语言库函数
  20. 详解最近公共祖先(LCA)

热门文章

  1. easy and hard things
  2. ads in shanghai
  3. new housing price at shanghai
  4. 当孩子面对困难的时候,家人可能的鼓励的方式
  5. 你总是不要等到完全准备好了再去做事情
  6. Unity 中使用Async-Await替代 coroutines
  7. 查看linux是几位的操作系统
  8. swift hidesBottomBarWhenPushed 设置界面
  9. 大数据开发实战:数据仓库技术
  10. 第28天:js-Tab栏切换封装函数