List 将嵌套元素添加到";“平坦”;列表

List 将嵌套元素添加到";“平坦”;列表,list,nested,tcl,List,Nested,Tcl,我有一个“扁平”的Tcl列表。现在,我想将新元素作为子元素附加到现有元素之一。我该怎么做 这就是我所尝试的: [ lindex $flights $i ] [ lindex $flight 0 ] ] 我尝试将列表“flights”中的元素添加到列表“flights”中的元素。航班列表中的元素$i已存在 我可能是在使用Tcl语法,因为我是Tcl新手 感谢您的帮助。您可以使用lset用新列表替换列表中的元素。新列表的第一个元素是旧元素,第二个元素是它的子元素。下面是一个例子: % set fli

我有一个“扁平”的Tcl列表。现在,我想将新元素作为子元素附加到现有元素之一。我该怎么做

这就是我所尝试的:

[ lindex $flights $i ] [ lindex $flight 0 ] ]
我尝试将列表“flights”中的元素添加到列表“flights”中的元素。航班列表中的元素
$i
已存在

我可能是在使用
Tcl
语法,因为我是
Tcl
新手


感谢您的帮助。

您可以使用lset用新列表替换列表中的元素。新列表的第一个元素是旧元素,第二个元素是它的子元素。下面是一个例子:

% set flights [list a b c d e]
a b c d e
% set i 1
1
% lset flights $i [list b child]
a {b child} c d e
% lindex $flights 1
b child
% lindex [lindex $flights 1] 1
child
% lindex [lindex $flights 1] 0
b

另外:
lindex$flights 1 0
非常有用,在8.6中,您可以使用
lset flights$i end+1 child
。(在8.5中不起作用,它不允许
lset
扩展列表。)谢谢,我错过了list关键字。