因此,我正在尝试让python打印其中包含tcl变量的字符串,并带有该变量的结果.我正在使用nuke,以防对我的代码很重要.
[set THIS image]
Ln = "/Test/still/testing/$THIS\_clean_v001"
print(Ln) # this prints exactly the above
G = nuke.tcl('[puts "$THIS"] ')
print(G)是否会返回单词image或否?
然后我可以将其放入.问题是我输入该tcl的文本字段可以在程序内部很好地解决它,但是一旦我将其发送给处理,它将立即使用$THIS.
解决方法:
需要注意的两件事:
> Tcl puts不返回值.听起来您想要Tcl set
,确实如此.
>位于http://www.nukepedia.com/reference/Python的nuke.tcl的文档指示:
tcl(command, arg, arg, ...)
Run a tcl command. The arguments must be strings and passed to the command. If no arguments are given and the command has whitespace in it then it is instead interpreted as a tcl program (this is depreciated)
似乎可以使用未弃用的版本,而不必使用完整的脚本来调用它,而是使用以下命令获得所需的行为:
G = nuke.tcl("set", "THIS")
应该重新输入THIS变量的值.