51Testing软件测试论坛

标题: 关于TCL的问题,如何将使用lindex取出的元素值赋予另一变量? [打印本页]

作者: morpar82    时间: 2006-5-2 01:05
标题: 关于TCL的问题,如何将使用lindex取出的元素值赋予另一变量?
设P1为集合a的一个元素,值为“STAT”;
现在我希望将P1的值赋予一变量meb
我执行了下面的语句:

set a {P1 P2 P3 P4}
set meb $[lindex $a 0]

却返回了$P1,该如何写这个语句呢?我希望可以返回meb的值为“STAT”。
作者: yjshen    时间: 2006-5-6 18:26
set a "P1 P2 P3 P4"
set b [lindex $a 0]
作者: williames    时间: 2006-5-7 11:14
lindex $a 0  的命令 得到的值为"P1" 并不是一个变量   因此不需要在[lindex $a 0]之前再加一个$
作者: morpar82    时间: 2006-5-11 17:37
嗯,看来是这样的,这个方法取不到p1的值。
现在我采用数组的办法来取就没问题了,多谢楼上两位
作者: colicweed    时间: 2006-5-13 15:48
set a {P1 P2 P3 P4}
set meb $[lindex $a 0]
把 [lindex $a 0]前面的$去掉就可以将P1的值赋给meb
set  P1 stat
set a "$P1 P2 P3 P4"
set meb [lindex $a 0]
puts $meb
作者: morpar82    时间: 2006-5-13 16:10
to colicweed:这个办法可以耶,多谢~
我脑子里光想拿变量来组合成集合,而忽略了拿变量的值来组合,呵呵~




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2