shi*_*ufa 2 python descriptor python-3.x
问:为什么hh.a = 2不是我所期望的但ba = 2是好的?
这是代码:
class D:
def __init__(self):
print('this is init')
self.name = ''
def __get__(self,instance,owner):
print('getting')
return self.name
def __set__(self,instance,value):
print('setting')
self.name = value
return self.name
Run Code Online (Sandbox Code Playgroud)
和...
class hh:
a = D()
b = hh()
Run Code Online (Sandbox Code Playgroud)
当我设置hh.a = 2时它不会调用print('setting')但是ba = 2是好的.你能解释一下吗?
| 归档时间: |
|
| 查看次数: |
80 次 |
| 最近记录: |