说明
通常两个公开的属性(读、写),保护一个私有的变量。
@property负责读取,@属性名.setter负责写入
只写:属性名=property(None,写入方法名)代码
"""
封装 -- 标准属性
作用:保护实例变量
"""
# 1. 创建实例变量
# 2. 提供两个公开的读写方法
# 3. 使用@property修饰读取方法
# 使用@属性名.setter修改写入方法
class Wife:
def __init__(self, name="", age=0):
self.name = name
self.age = age
@property # 创建property对象,自动绑定下面方法(读取)
def age(self):
return self.__age
@age.setter # 自动绑定下面方法(写入)
def age(self, value):
if 20 <= value <= 50:
self.__age = value
else:
raise Exception("我不要")
w01 = Wife("宁宁", 25)
w01.age = 27
print(w01.age)
print(w01.__dict__)
输出测试
27
{'name': '宁宁', '_Wife__age': 27}
本文地址:https://www.mainblog.cn/307.html
版权声明:本文为原创文章,版权归 阁主 所有,欢迎分享本文,转载请保留出处!
免责申明:有些内容源于网络,没能联系到作者。如侵犯到你的权益请告知,我们会尽快删除相关内容。
版权声明:本文为原创文章,版权归 阁主 所有,欢迎分享本文,转载请保留出处!
免责申明:有些内容源于网络,没能联系到作者。如侵犯到你的权益请告知,我们会尽快删除相关内容。
黔ICP备19006353号-2
贵公网安备 52052102000042号