我有这个清单
set csv [list]
lappend csv [list \
a \
b \
c \
[expr {[cfg::get enable_all_columns]
? {
d
}
: {}
}] \
e \
f \
g]
仅当
d
是 enable_all_columns
时,我才需要添加元素 1
。问题是,使用这种方法,如果它是 0
,它会返回一些空值,从而在 csv
报告中创建一个新列。
那个
lappend
输出这个列表{a b c d e f g}
我尝试打破 lappend
来放置条件,然后添加最后一个条件,但这会导致 {a b c} d e f g
我也尝试过linsert
但效果是一样的
set csv [list]
lappend csv [list \
a \
b]
set csv [linsert $csv 1 x]
puts "$csv"
我会这样做:
set csv {a b c e f g}
if {[cfg::get enable_all_columns]} {
set csv [linsert $csv 3 d]
}