在Python中我可以写如下:
my_list = [4, 7, "test"]
a, b, c = my_list
Run Code Online (Sandbox Code Playgroud)
在这之后a是4,b是7和c是"test"因为在最后一行的解压缩操作.我可以做一些类似Tcl的最后一行吗?为了使它更清楚,我想要这样的东西:
set my_list {4 7 test}
setfromlist $mylist a b c
Run Code Online (Sandbox Code Playgroud)
(即setfromlist我正在寻找的命令.)
RHS*_*ger 15
你想要lassign:
% lassign
wrong # args: should be "lassign list ?varName ...?"
% lassign {1 2 3} a b c
% set a
1
% set b
2
% set c
3
Run Code Online (Sandbox Code Playgroud)
如果您使用的是旧版本的Tcl(没有lassign),您可以使用foreach来获得相同的结果
foreach {a b c} {1 2 3} {break}
Run Code Online (Sandbox Code Playgroud)