在Python中,@property 装饰器用于将一个类的方法转变为属性访问的形式。这通常用于当你想提供一个方法,让它表现得像是一个属性,或者当你想在访问属性时加入一些逻辑处理。
下面是一个使用 @property 的例子:
1 |
|
在这个例子中,Circle 类有两个属性:radius 和 area。通过使用 @property 装饰器,我们定义了 radius 的 getter 和 setter 方法,以及 area 的只读属性。
@property装饰器将radius方法转换为属性,这样我们就可以使用circle.radius来访问或设置圆的半径。@radius.setter装饰器定义了设置radius属性时应该执行的代码,这里我们添加了一个检查,确保半径不会是负数。area属性使用了@property装饰器,但没有对应的 setter 方法,因此它是一个只读属性。我们不能直接设置area的值,但可以通过访问circle.area来获取圆的面积。
使用 @property 的好处是代码更加清晰易读,同时可以在访问属性时加入逻辑处理,使得类的接口更加安全和灵活。
Python学习交流群,欢迎加入,👇
