如何在Python中模拟赋值运算符重载?例如...如何在Python中模拟赋值运算符重载?
class Example(object):
name = String()
age = Integer()
def __init__(self,myname,myage):
self.name.value = myname
self.age.value = myage
,而不是做self.name.value =名字,你怎么可以模拟赋值运算符超载使MYNAME分配,当你做self.name.value self.name =我的名字?
我结束了创建一个元类注册类型的属性(这是'Property'类的子类)。然后我重载'Example'('Model')类中的'__setattr__'方法来类型检查元类注册的属性。见https://github.com/espeed/bulbs/blob/master/bulbs/model.py – espeed 2013-02-02 06:51:22
你在使用'traits'吗? – pradyunsg 2013-10-18 18:30:44
不,我推出了我自己的Property类class https://github.com/espeed/bulbs/blob/master/bulbs/property.py,它是Model的元类使用的。查看灯泡模型API文档http://bulbflow.com/docs/api/bulbs/model/ – espeed 2013-11-18 18:13:07