我试图找到正确的语言来支持这种行为的原由,以免给您一个“因为它就是”答案……但是似乎这个问题已经被问了不止一次了,并且它归结为的行为
super()。您可以在此处查看有关此确切行为的2010年讨论:http : //mail.python.org/pipermail/python-
dev/2010-April/099672.html
最终,它实际上只是归结为super()调用,只允许您直接访问getter,而不是setter。设置者必须通过
fset()或访问
__set__()。可能最容易解释为“
super()功能只是不支持它”。它将在“设置” *** 作中解决“获取” *** 作的属性功能,而不是左手分配中的设置器(因此将
fset()调用方法)。从讨论线程的日期可以看出,自引入以来,显然是这种方式
super()。
也许其他人有更具体的技术原因,但坦率地说,我不确定这是否重要。如果不支持,那就足够了。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)