gpt4 book ai didi

tcl - 如何从 info globals 命令输出所有变量的值列表?

转载 作者:行者123 更新时间:2023-12-04 19:56:26 30 4
gpt4 key购买 nike

我正在尝试编写一小段代码来列出 info globals 命令中包含的所有变量及其值。我已经尝试了几次替换迭代,但无法让 Tcl 将变量名视为变量,并返回其值。以下是我开始的内容:

set fileid [open "c:/tcl variables.txt" w+]
foreach {x} [lsort [info globals]] {
set y $x
puts $fileid "$x $y "
}

我可以得到

DEG2RAD DEG2RAD
PI PI
RAD2DEG RAD2DEG
.....

或者

DEG2RAD $DEG2RAD
价格$PI
RAD2DEG $RAD2DEG
.....

但我需要的是

DEG2RAD 0.017453292519943295
PI 3.1415926535897931
RAD2DEG 57.295779513082323
....

最佳答案

我认为您正在寻找 subst 命令:

set fileid [open "c:/tcl variables.txt" w+] 
foreach {x} [lsort [info globals]] {
puts $fileid "$x [subst $$x] "
}

或者,您可以利用 set 返回正在设置的值这一事实:
set fileid [open "c:/tcl variables.txt" w+] 
foreach {x} [lsort [info globals]] {
puts $fileid "$x [set $x] "
}

关于tcl - 如何从 info globals 命令输出所有变量的值列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10645047/

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