gpt4 book ai didi

list - 将元素追加到 TCL 中的嵌套列表

转载 作者:行者123 更新时间:2023-12-02 17:34:24 26 4
gpt4 key购买 nike

我想动态地将元素添加到嵌套列表中。考虑以下示例:

set super_list {}
lappend super_list {00 01 02}
lappend super_list {10 11 12}
lappend super_list {20 21}

结果:

super_list = {00 01 02} {10 11 12} {20 21}
[lindex $super_list 0] = {00 01 02}
[lindex $super_list 1] = {10 11 12}
[lindex $super_list 2] = {20 21}

如何将另一个值(例如 22)附加到 [lindex $super_list 2]?

lappend [lindex $super_list 2] 22

不起作用!

到目前为止我能想到的唯一解决方法是:

lset super_list 2 [concat [lindex $super_list 2] {22}]

这真的是唯一的方法吗?

谢谢,莱纳斯

最佳答案

在 Tcl 8.6 中(添加了该功能;在早期版本中不起作用),您可以使用 lset 通过索引 end+1 扩展嵌套列表:

set super_list {{00 01 02} {10 11 12} {20 21}}
lset super_list 2 end+1 22
puts [lindex $super_list 2]
# ==> 20 21 22

您也可以使用数字索引来解决末尾的问题,但我认为 end+1 更容易助记。

关于list - 将元素追加到 TCL 中的嵌套列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17945880/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com