我想在Tcl中生成一个循环,如果n = 2则创建:
set Beam_Gravity_Load [subst {$a $b}]
如果n = 3:
set Beam_Gravity_Load [subst {$a $a $b}]
如果n = 4:
set Beam_Gravity_Load [subst {$a $a $a $b}]
如果n = 5:
set Beam_Gravity_Load [subst {$a $a $a $a $b}]
等等。 " N"总是大于2.我该怎么做?!
答案 0 :(得分:0)
您正在寻找的是lrepeat
与{*}
:
set Beam_Gravity_Load [list {*}[lrepeat [expr {$n-1}] $a] $b]
您也可以使用for
:
set value {}
for {set i 1} {$i < $n} {incr i} {
lappend value $a
}
lappend value $b
set Beam_Gravity_Load $value
(如果未链接/跟踪Beam_Gravity_Load
变量,则可以避免使用额外的value
变量。)