我有一堂课property
。我也有该属性的设置器。我怎样才能得到绑定的方法property.setter
?
为什么我要问
使用常规方法,这很容易。一个可以用class_instance.method_name
。
但是,我很难弄清楚这一点property
,因为它返回一个描述符对象。
示例代码
这是写的Python 3.6
:
class SomeClass:
def __init__(self):
self._some_attr = 0
@property
def some_attr(self) -> int:
return self._some_attr
# How can I get this bound method?
@some_attr.setter
def some_attr(self, val: int) -> None:
self._some_attr = val
def normal_method(self, val: int) -> None:
self.some_attr = val
if __name__ == "__main__":
some_class = SomeClass()
print(some_class.some_attr) # prints: 0
print(some_class.normal_method) # prints: bound method SomeClass.normal_method