首页 > 代码库 > 创建可管理的对象属性
创建可管理的对象属性
在面向对象编程中,把方法(函数)看作对象的接口。直接访问属性可能不安全,或设计上不够灵活。但使用调用方法形势上不如访问属性简洁。
使用property为类创建可管理的属性。
from math import pi class Circle(object): def __init__(self, radius): self.radius = radius def getRaduis(self): return self.radius def setRaduis(self, value): if not isinstance(value, (int, float, long)): raise ValueError(‘格式不正确‘) self.radius = float(value) def getArea(self): return self.radius ** 2 * pi R = property(getRaduis, setRaduis) # c = Circle(2) ‘‘‘属性访问‘‘‘ # c.radius # c.radius = 3 # c.radius = ‘abd‘没有抛出异常 ‘‘‘方法调用‘‘‘ # c.getRaduis() # c.setRaduis(3.3) # c.setRaduis(‘sdd‘)抛出异常 c = Circle(2)
‘‘‘形式上是属性的访问,实际上是方法的调用‘‘‘ print c.R c.R = 3.5 print c.R #c.R = ‘sds‘
创建可管理的对象属性
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。