如何将变量输入Tcl开关代码块?

时间:2015-04-20 10:03:16

标签: variables switch-statement tcl

我想在Tcl 8.5中做一些非常简单的事情。 我有一个变量,另一个变量,我试图将它们等同于一个开关。在Python和Python中很容易做到的事情Ruby,我无法在Tcl工作。手册页http://www.tcl.tk/man/tcl8.5/TclCmd/switch.htm没有帮助。 见代码和&结果:

set k 4
switch 4 {
    $k { puts "yey" }
    default {puts "no recon"  }
}
exit

输出:

no recon

有什么想法吗?

1 个答案:

答案 0 :(得分:1)

Tcl不会在大括号内进行替换。使用双引号更改代码

set k 4
switch 4 "
    $k { puts yey }
    default {puts \"no recon\"  }
"

或者将其写成一行

switch 4 $k { puts yey }  default {puts "no recon"  }