Tcl命令操做实验-----(4)---列表及其子命令

list列表命令:总体上Tcl的列表相似python语言中的列表python

set lt {abc {def {jkl ccc}}}
abc {def {jkl ccc}}
puts $lt
abc {def {jkl ccc}}
concat lt ghi
lt ghi
puts $lt
abc {def {jkl ccc}}
concat $lt ghi
abc {def {jkl ccc}} ghi
puts $lt
abc {def {jkl ccc}}
llength $lt
2
lrange $lt 1 2
{def {jkl ccc}}
lrange $lt 1 3
{def {jkl ccc}}
lrange $lt 0 1
abc {def {jkl ccc}}
linsert $lt 1 {www qqq}
abc {www qqq} {def {jkl ccc}}
puts $lt
abc {def {jkl ccc}}

注意:重点知识 Tcl命令中方括号用来表示先执行方括号中的角本再将结果做为参数
Vivado% puts $lt
abc {def {jkl ccc}}
Vivado% set newlt  [linsert $lt 1 {eee rrr}]
abc {eee rrr} {def {jkl ccc}}
Vivado% puts $newlt
abc {eee rrr} {def {jkl ccc}}

注意 append字符串追加命令 不要用$lt 而要用lt
Vivado% set nlt  [linsert $lt 1 {eee rrr}]
abc {eee rrr} {def {jkl ccc}}
Vivado% append nlt {hhh jjj}
abc {eee rrr} {def {jkl ccc}}hhh jjj
可是列表的追加命令是lappend,也有相似要求,列表变量名不要加$
Vivado% set nlt2  [linsert $lt 1 {eee rrr}]
abc {eee rrr} {def {jkl ccc}}
Vivado% lappend nlt2 {kkk {kkk LLL}}
abc {eee rrr} {def {jkl ccc}} {kkk {kkk LLL}}
Vivado% puts nlt2
nlt2
Vivado% puts $nlt2
abc {eee rrr} {def {jkl ccc}} {kkk {kkk LLL}}
相关文章
相关标签/搜索