我需要打印一个带有动态行和动态列的报告,如下所示。
apple bannana pineapple
Total 47 Total 376 Total 210
a : 3 i : 10 m : 45
b : 4 j : 33 o : 67
c : 18 k : 245 n : 98
d : 22 l : 45
x : 43
我想取所有列表的 llength 并以列表的最高 llength 迭代 for 循环。在上面的例子中,它是 5 次。
我的疑问是,如何使用从“for 循环”中获得的数字打印列表中的特定对。
例如,在第一次迭代中,我需要选择所有水果中的第一项并打印。可能像fruit_${type}[1]。不知道我该怎么做。请指教。
#!/bin/sh
# \
exec tclsh "$0" "$@"
set fruit_apple {{a 3} {b 4} {c 18} {d 22}}
set fruit_bannana {{i 10} {j 33} {k 245} {l 45} {x 43}}
set fruit_pineapple {{m 45} {o 67} {n 98}}
set fruit {apple bannana pineapple}
puts $fruit_apple
foreach type $fruit {
puts $type
foreach pair [set fruit_${type}] {
set key [lindex $pair 0]
set value [lindex $pair 1]
puts "$key : $value"
}
}