from math import pi
class Circle(object):
def __init__(self, radius):
self.radius = radius
def getRadius(self):
print('调用了getRadius方法')
return self.radius
def setRadius(self, value):
print('调用了setRadius方法')
if not isinstance(value, (int, float)):
raise ValueError('wrong type.')
self.radius = float(value)
def getArea(self):
return self.radius ** 2 * pi
R = property(getRadius, setRadius) # 对参数R进行内定, 凡事涉及到c.R调用 getRadius方法, c.R赋值调用setRadius方法
c = Circle(3.2)
print(c.R) # 分别输出 调用了getRadius方法 和3.2
c.R = 34 # 调用了setRadius方法
property 用法
写入自己的博客中才能记得长久