gpt4 book ai didi

list - 如何在TCL中将列表的某些部分复制到新列表?

转载 作者:行者123 更新时间:2023-12-02 11:46:55 27 4
gpt4 key购买 nike

我有一个列表如下:

set list1 {1,2,3,4,5,6,7,8,9}

如何每次将其中的三个元素复制到另一个列表?

例如复制后:

listc1 is {1,2,3}
listc2 is {4,5,6}
listc3 is {7,8,9}

最佳答案

您的第一个语句稍有偏差:Tcl 不使用逗号来分隔列表元素,而是使用空格。下面是一个代码片段,它将执行您想要的操作:

set list1 {1 2 3 4 5 6 7 8 9}
set counter 0
foreach {a b c} $list1 {
set listc[incr counter] [list $a $b $c]
}

讨论

  • foreach 语句一次从列表中获取 3 个元素。在第一次迭代中,a=1,b=2,c=3。在第二个中,a=4、b=5、c=6 等等。
  • 表达式 listc[incr counter] 将产生 listc1, listc2, ...
  • 如果列表的长度不能被三整除,则最后一个 listc* 将用空元素填充。

关于list - 如何在TCL中将列表的某些部分复制到新列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19138259/

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