如何解决只打印那些满足豁免文件中条件的变量
我想在豁免文件(fh)中打印某些满足条件的vdd和ground并打印在豁免文件中。
*set matrix_waiver($pwr_name,$gnd_name) 1
if { [info exists matrix_waiver] } {
foreach power $pwr_name {
if { [info exists matrix_waiver($power) ] } {
lappend matrix_waiver $fh_waiver
}
}
foreach ground $gnd_name {
if { [info exists matrix_waiver($ground) ] } {
lappend matrix_waiver $fh_waiver
}
}
}*
解决方法
您的问题是您将变量 (matrix_waiver
) 用作简单变量和关联数组。那是行不通的(好吧,除非变量介于 unset
之间,否则我认为您不想这样做)。这两者在 Tcl 中根本不同(它们是两种主要的变量类型;第三种是链接,用于实现 global
和 upvar
,您通常可以忽略它)。
如果实际数据(您没有向我们展示)是一个简单的变量,其中仍然可能包含复杂的结构,例如列表和字典,那么您将不得不使用 lindex
和lset
和 lappend
等等。
如果实际数据是关联数组,则需要在执行 lappend
等操作时提供正确的元素名称。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。