dry*_*dam 43
set mylist {a b c}
puts $mylist
a b c
Run Code Online (Sandbox Code Playgroud)
按索引删除
set mylist [lreplace $mylist 2 2]
puts $mylist
a b
Run Code Online (Sandbox Code Playgroud)
按值删除
set idx [lsearch $mylist "b"]
set mylist [lreplace $mylist $idx $idx]
puts $mylist
a
Run Code Online (Sandbox Code Playgroud)
Don*_*ows 16
删除元素的另一种方法是将其过滤掉.这种Tcl 8.5技术与其他地方提到的lsearch&lreplace方法的不同之处在于它从列表中删除了所有给定元素.
set stripped [lsearch -inline -all -not -exact $inputList $elemToRemove]
Run Code Online (Sandbox Code Playgroud)
它没有做的是搜索嵌套列表.这是Tcl没有过多努力深入理解您的数据结构的结果.(您可以通过-index选项比较子列表的特定元素来告诉它进行搜索.)
| 归档时间: |
|
| 查看次数: |
66081 次 |
| 最近记录: |