2011.11.1好日子,今天博客访问量超过1000了。
2012.01.29,访问量突破2000了.
2012.02.01,访问量突破3000了.继续进步
自动化测试自我培训(脚本语言-TcL数组,字典,列表)
上一篇 /
下一篇 2012-01-27 23:05:51
/ 个人分类:自动化脚本
字符串:Tcl内部将字符串作为Unicode字符存储,而字符串操作指令包含两种不同的模式匹配方法:一种是与外壳中的文件名展开规则相似,另一种将正则表达式作为样式.而列表表现为特定结构的字符串.
列表:TCL列表是一系列的值。列表使用空白符将元素分割开来。可以使用花括号或双引号将包含空白符的单词组成一个单一的列表元素。与其他语言中的列表数据结构不同的是,TCL列表只是具有特殊解释的字符串。
列表与数组的区别:
列表是标量的有序集。数组是包含列表的变量, 列表与数组最主要的区别在于在标量环境中,数组被解释为其长度,而列表则被解释为其最后一个元素。列表与数组类似,是将任意数量的元素集合起来,但是它是元素的有序集合,最简单的列表就是包含由任意个空格、制表符、换行符分隔开得任意多个元素的字符串。如字符串:{ Altera Xilinx Lattice Cadence},这就是一个有4个元素的列表.在这里引入别的语言中关于两个使用的场合: 列表不利于检索,但是有利于随机插入操作.不管是检索还是插入,列表都要进行扫描, 而数组有利于检索和顺序添加,不利于随即插入操作.
字典:在列表中想要取出一个元素,需要知道该元素在列表中的索引,如果不知道索引那该怎么办呢?TCL给出了一个解决方案,就是字典。字典是TCL 8.5版本才引进的数据类型,它为列表中的每个元素指定了一个独有的名字。
字典跟数组有什么区别呢,数组也有数组名啊!其实字典跟数组有一些根本性的不同,数组是变量的无序集合,而字典是元素值的有序集合,并且还支持嵌套。字典是类似于有偶数个元素的列表的一种结构,其第1、3、5 …… 个元素表示元素名称,并且都不相同。
字典好比别的语言中有键跟值的概念.
以下是实例(因为本本的tk版本较低,所以字典暂时未列出):
% set listTest {a b c d e f g} #创建一个列表
a b c d e f g
% puts $listTest
a b c d e f g
% puts [lindex $listTest 4] #通过索引来查询列表
e
% for {set i 0} {$i < 7} {incr i 1} {
set ArrayTest($i) [lindex $listTest $i]#创建数组
}
% array get ArrayTest
4 e 0 a 5 f 1 b 6 g 2 c 3 d
% puts $ArrayTest(4)#打印数组
e
% set StTest abcdefg
abcdefg
% puts [string index $StTest 4] #打印字符串
收藏
举报
TAG: