我的工作,需要给予它的__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