我的工作,需要給予它的__dict__
屬性通過__init__
注入這樣的類:變化__slots__動態
class Torrent(Model):
def __init__(self, d):
super(Torrent, self).__init__('torrents')
self.__dict__ = d
而且需要確保不會改變,因爲實例對象的結構將在NOSQL數據庫中結束。我認爲__slots__
可能會有所幫助,但我需要動態定義它。
有沒有辦法讓它可能沒有元類?
我需要以更自然的方式訪問代碼中的字段,比如torrent.some_field = some_val,感謝您的幫助。 – loki
如果你不使用'__slots__',你總是可以使用'torrent.some_field = some_val'。在實例化類時,只需在field變量中設置'some_field'(或者它也可以是一個類變量,如果需要更多變量,則可以使用工廠函數)。 –
從字段聲音設置屬性torrent.some_field,它的代碼更多,但速度的增加會證明額外的工作。 – loki