【发布时间】:2017-10-16 09:07:01
【问题描述】:
我有一个包含值的列表:
set unnumbered [list 101 101 101 102 102 103 104 105 105 105 106]
我想为后续相同的值添加一个计数器,如下所示:
numbered [ 101.1 101.2 101.3 102.1 102.2 103 104 105.1 105.2 105.3 106]
到目前为止,我已经尝试了以下方法:
set unnumbered [list 101 101 101 102 102 103 104 105 105 105 106]
set numbered [list ]
set previous [lindex $unnumbered 0]
set subcounter 1
foreach current $unnumbered {
if { $current eq $previous } {
lappend numbered $current.$counter
set previous $current
incr subcounter
} else {
lappend numbered $current
set previous $current
set subcounter 1
}
}
结果几乎是我需要的。
101.1 101.2 101.3 102 102.1 103 104 105 105.1 105.2 106
对于除第一个值之外的所有值,计数器开始计数到晚。前 102 拉克“.1”
我该如何解决这个问题?
【问题讨论】: