1

如果我有一个指向“inner_list”的列表“outer_list”包含“inner_list”包含一些键和值,例如键{aaa bbb ccc jjj kkk lll ooo}和值{22 34 56 78 90 67,如何创建列表列表88}

4

1 回答 1

1

列表是 Tcl 中普通的旧值,您可以根据需要将它们放在一起。该list命令在这里非常有用。

set inner_list1 {aaa bbb ccc jjj kkk lll ooo}
set inner_list2 {22 34 56 78 90 67 88}
set outer_list [list keys $inner_list1 values $inner_list2]

如果你打算把东西压缩在一起,你可以用foreachand来做lappend

set outer_list {}
foreach key {aaa bbb ccc jjj kkk lll ooo} value {22 34 56 78 90 67 88} {
    lappend outer_list [list $key $value]
}

(如果您真的在做键/值对,请考虑使用字典。)
构建嵌套列表结构有很多不同的方法。最好的方法将在很大程度上取决于您要构建的内容。唯一的限制是你不能用列表(或字典)创建递归结构——如果你尝试,Tcl 会复制东西——但如果你愿意,你仍然可以构建非常大的数据结构……</p>

于 2013-08-13T18:59:49.960 回答