|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
大家好,我是小萌新,最近在学python,我根据小甲鱼老师视频里的代码练习时发现我的property()函数出现了问题.
可以看到>>>s.a=12这句话并没有使用property()函数,而是新建了一个属性. 这在s.__dict__得到了验证.
我用的版本是2.7.15,虽然是老版本,但这个函数好像没有在3中有变动,我想问是咋回事,还请论坛内大佬为我解答
- >>> class C:
- def __init__(self,size=10):
- self.size=size
- def getsize(self):
- return self.size
- def setsize(self,sixe):
- self.size=sixe
- def delsize(self):
- del self.size
- a = property(getsize,setsize,delsize)
-
- >>> s=C()
- >>> s.a
- 10
- >>> s.a=12
- >>> s.getsize()
- 10
- >>> s.a
- 12
- >>> s.__dict__
- {'a': 12, 'size': 10}
-
复制代码
在3.6.2新运行没有问题。
- >>> s=C()
- >>> s.a
- 10
- >>> s.a=12
- >>> s.getsize()
- 12
- >>> s.a
- 12
- >>> s.__dict__
- {'size': 12}
复制代码
|
|