2
我有一個數據庫對象不要創建對象時,如果條件沒有__init __()
class MyObj:
def __init__(self):
...SQL request with id as key...
if len(rows) == 1:
...maps columns as my_obj attributes...
self.exists = True
else:
self.exists = False
映射有了這樣的設計,對象每次創建一個類滿足,我們檢查,如果它與.exists屬性一起存在於數據庫中。
my_obj = MyObj(id=15)
if my_obj.exists:
...do stuff...
它的工作原理。
但我懷疑還有就是初始化一個乾淨的方式,我們將只需要檢查這樣的:
my_obj = MyObj(id=15)
if my_obj:
...do stuff...
是不是可以使用\ _ \ _德爾\ _ \ _在()方法\ _ \ _ INIT \ _ \ _()?通常我用全局類數組處理它(稱爲_instances_),如果我的條件成立,我會自動推送_self_。之後我只需循環_MyClass.instances_。 –
nope,我試過但不起作用AttributeError:'Test'對象沒有屬性'__del__' – comte
@martijn,你爲什麼要把instance = super()...似乎和'self'很好地配合,而不是' cls'和self.rows/return self – comte