如果变量不存在,如何检查实例是否存在?

dar*_*aze 1 python maya mel

我有一个按钮,可以导入带有类的模块。类 (varClass) 创建一个窗口。

如果我再次单击该按钮,我会尝试以下操作:

if var:
    var.toggleUI()
else :
    var = varClass()
Run Code Online (Sandbox Code Playgroud)

但打开 Maya 后第一次创建窗口时 var 不存在。我怎样才能让它工作?

Mar*_*ers 5

你可以捕获NameError异常:

try:
    var.toggleUI()
except NameError:
    var = varClass()
Run Code Online (Sandbox Code Playgroud)

如果您toggleUI也需要第一次调用,只需尝试名称本身:

try:
    var
except NameError:
    var = varClass()

var.toggleUI()
Run Code Online (Sandbox Code Playgroud)

我不熟悉 Maja,但如果您可以先在其他地方定义名称并简单地将其设置到None那里,那么您的代码即使不是更好,也可以工作。