这是一个相关的问题:How do I check if a variable exists?如何检查Python中是否存在静态变量?
但是,它不适用于静态变量。
我所要做的是以下,
class A:
def __init__(self):
if A.var is null: # this does not work, okay
A.var = 'foo'
print 'assigned'
好吧,既然A.var
甚至没有分配。它会引发en错误。所以,我想这一点:
class A:
def __init__(self):
if 'A.var' not in globals(): # this seems to okay, but ..
A.var = 'foo'
print 'assigned'
a = A()
b = A()
它的结果:
assigned
assigned
这都说明if 'A.var' not in globals():
线不能正常工作。
那么,如何检查Python中是否存在静态变量?
Python没有静态变量,所以...你没有。 – geoffspear
在python中没有这样的静态变量 - 一个类的变量简单地称为类变量。没有'空'(它被称为“无”)。另外,你正在寻找'hasattr'。 – l4mpi
另外,如何在'__init__'函数调用之前分配一个类的属性? – Dunno