访问长 Tcl 列表

Accessing long Tcl list

我有一个长长的 tcl 列表:

>> puts $res
{ banner { } }  { report { { name {{ columns { {head1} {head2} {head3} {head4} {pin} } } { { row_1 { { } {-0.008} { } {r1} {hier1} } } { row_2 { {1000} {-0.009} {-0.000} {r2} {hier2} } } } } } } }

我需要访问 row_2 中的值 1000。

虽然我可以使用以下方法获取值,但我想知道是否有更好的方法来执行此操作而不是多次指定 lindex。

 >> set val [lindex [lindex [lindex [lindex [lindex [lindex [lindex [lindex $res 1] 1] 0] 1] 1] 1] 1] 0]
 >> 1000 

lindex命令可以取多个索引,所以你可以这样做:

set val [lindex $res 1 1 0 1 1 1 1 0]