Python中property的使用方式是怎样的,如何做
Admin 2022-08-15 群英技术资讯 516 次浏览
property是一个类,可以把一个方法当做属性进行使用,这样做可以简化代码使用。
实际上就是装饰类中属性的getter setter方法,使得属性可以通过 对象.属性 的方式获取或设置
使用property的两种方式
2. 装饰器方式
@property 修饰获取的方法getter, 方法名必须和属性名一样
@age.setter 修饰设置值的方法setter, 方法名必须和属性名一样
class Person(object): def __init__(self): self.__age = 0 # 装饰器方式的property, 把age方法当做属性使用, 表示当获取属性时会执行下面修饰的方法 @property def age(self): return self.__age # 把age方法当做属性使用, 表示当设置属性时会执行下面修饰的方法 @age.setter def age(self, new_age): if new_age >= 150: print("成精了") else: self.__age = new_age # 创建person p = Person() print(p.age) p.age = 100 print(p.age) p.age = 1000
运行结果:
0 100 成精了
说明:
class Person(object): def __init__(self): self.__age = 0 def get_age(self): """当获取age属性的时候会执行该方法""" return self.__age def set_age(self, new_age): """当设置age属性的时候会执行该方法""" if new_age >= 150: print("成精了") else: self.__age = new_age # 类属性方式的property属性 age = property(get_age, set_age) # 创建person p = Person() print(p.age) p.age = 100 print(p.age) p.age = 1000
运行结果:
0 100 成精了
代码说明:
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
这篇文章主要介绍了PyQt5实现tableWidget 居中显示方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
最近处理一些规格不一的照片,需要修改成指定尺寸便于打印,下面这篇文章主要给大家介绍了关于python批处理将图片进行放大的相关资料,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
这篇文章主要为大家详细介绍了python实现名片管理系统,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
subprocess 模块允许我们启动一个新进程,并连接到它们的输入/输出/错误管道,从而获取返回值。
这篇文章主要介绍了python pandas遍历每行并累加进行条件过滤方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
成为群英会员,开启智能安全云计算之旅
立即注册Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008