是否可以在tcl列表声明中使用变量?我有以下简单示例:
set grape_color "green"
set produce_list {\
{ PRODUCE COLOR REGION }\
{ APPLE "red" TX }\
{ GRAPE $grape_color CA }\
}
puts $produce_list
Run Code Online (Sandbox Code Playgroud)
代码的输出是这样的:
{ PRODUCE COLOR REGION }
{ APPLE "red" TX }
{ GRAPE $grape_color CA }
Run Code Online (Sandbox Code Playgroud)
但我想要"绿色"而不是$grape_color列表.
一种方法是使用该list命令.
set grape_color green
set produce_list [list \
[list PRODUCE COLOR REGION] \
[list APPLE red TX] \
[list GRAPE $grape_color CA]]
Run Code Online (Sandbox Code Playgroud)
另一种方法是使用该subst命令.
set grape_color green
set produce_list {
{ PRODUCE COLOR REGION }
{ APPLE red TX }
{ GRAPE $grape_color CA }
}
set produce_list [subst -nobackslashes -nocommands $produce_list]
Run Code Online (Sandbox Code Playgroud)