list
list ?value1 value2 .. valueN?
创建列表,返回由所有value组成的列表,如果没有指定value,则返回一个空字符串,必要时可以使用反斜杠和大括号。
list a b {c d} " " "e\tf" {g h}
lappend
lappend varName ?value1 value2 ... valueN?
向varName中追加元素,变量varName被视为列表,每一个value做为一个单独的元素追加到列表中,多个元素以空格分隔。如果varName指定的变量不存在,则会创建一个包含所有value值的名为varName的列表。
puts $list1
lappend list1 a b "c d"
puts $list1
lappend list1 e f {g h}
puts $list1
lassign
lassign list ?varName1 varName1 ... varNameN?
将列表中的元素按顺序分配给变量。如果变量名多于元素数量,则多出的变量都会被赋值为空字符串。如果元素数量多于变量,则返回未分配元素的列表。
set remain [lassign {a b c} x y z]
puts $x,$y,$z,$remain
set remain [lassign {a b } x y z]
puts $x,$y,$z,$remain
set remain [lassign {a b c d e} x y z]
puts $x,$y,$z,$remain
llength
llength list
计算列表中元素数量。注意:空列表不一定是空字符串。
llength {a b c}
llength {a b c {} d e}
llength { }
string length { }