变量就是某个容器的名称,可以存储一个值。变量的名称在程序运行期间保持不变,但是变量的值通常会不断改变。
- ➢ 定义: set 变量名 变量值
➢ 取值: $变量名
数组: TCL中数组可以存储很多值,通过元素名来进行检索。类似于某件事物(数组名)几种不同属性(元素名),每一种属性有其独立的值。
➢ 定义: set 数组名(元素名) 值
➢ 取值: $数组名(元素名)
数组
使用array指令获取数组信息
列表
➢ 列表是标量的有序集合。
➢ 定义 set 列表名 {元素1 元素2 元素3……}
➢ 取值 $列表名
TCL中有一系列十分方便的列表操作命令
- concat
➢ 语法格式 : concat 列表1 列表2
➢ 功能: 将列表1和列表2合并
llength
➢ 语法格式 :llength 列表
➢ 功能:返回列表中的元素个数
lindex
➢ 语法格式 : lindex 列表 n
➢ 功能: 返回列表中第n个元素(从0开始计数)!!!
如何得到列表list1 {a b c d e f}的最后一个元素?
lappend
➢ 语法格式 : lappend 列表 新元素
➢ 功能: 列表末尾加入新元素
如果我们lappend一个列表会怎么样?
如果我们想得到4 用什么样的命令?
这里第三个元素是把4、5看成了一个整体。
lsort
➢ 语法格式 : lsort 开关 列表
➢ 功能: 将列表按照一定规则排序
➢ 开关: 缺少时默认按照ASCII码进行排序。
⚫ –real 按照浮点数值大小排序
⚫ -unique唯一化,删除重复元素
➢ 按照ASICC码排序
➢ 按照数字大小排序(-real)
唯一化
如何得到列表list1 {0 1.2 -4 3 5}中的最小值?
expr
➢ 语法格式 : expr 运算表达式
➢ 功能: 将运算表达式求值
其原因是表达式5/2中5和2都是整数型参数, 默认运算结果也是整数型。
如果想要进行浮点运算, 只要将其中任意一个数值, 写成浮点形式(有小数点) 即可
以上内容均来自哔站的邸老师