gpt4 book ai didi

list - Tcl 列表中的变量替换

转载 作者:行者123 更新时间:2023-12-01 11:24:54 25 4
gpt4 key购买 nike

我正在尝试替换列表中的变量:

% set a 1  
1
% set b {1 $a}
1 $a
%
% set a 1
1
% set b [list 1 $a]
1 1

当我使用花括号 {} 来定义列表时,变量“a”不会被其值替换,但在使用 list 的情况下,它

在使用用 {} 定义的列表时如何替换变量的值?

最佳答案

% set a 1
1
% subst {1 $a}
1 1
% set b [subst {1 $a}]
1 1

但大多数 Tcl:ers 在创建带有替换的列表值时实际上更喜欢使用 list,就像您的第二次尝试一样:

% set b [list 1 $a]

其中一个原因是 subst 不会在值中保留列表结构:

% set a {a b}
a b
% set b [subst {1 $a}]
1 a b
% set b [list 1 $a]
1 {a b}

另一种可能性是使用双引号而不是大括号;这也不会保留列表结构。

% set b "1 $a"
1 a b

文档: list , set , subst , Summary of Tcl language syntax

关于list - Tcl 列表中的变量替换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38231829/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com