這是一個相關的問題: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