Python @property使用方法解析


Posted in Python onSeptember 17, 2019

1. 作用

将类方法转换为类属性,可以用 . 直接获取属性值或者对属性进行赋值

2.实现方式

使用property类来实现,也可以使用property装饰器实现,二者本质是一样的。多数情况下用装饰器实现。

class Student(object):
  @property
  def score(self):
    return self._score
  @score.setter
  def score(self, value):
    if not isinstance(value ,int):
      raise ValueError('分数必须是整数')
    if value <0 or value>100:
      raise ValueError('分数必须0-100之间')
    self._score = value
student = Student()student.score = 65print(student.score)65

score()方法上增加@property装饰器,等同于score= property(fget=score),将score赋值为property的实例。

所以,被装饰后的score,已经不是这个实例方法score了,而是property的实例score。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
在Python的Django框架中创建和使用模版
Jul 15 Python
Python基于二分查找实现求整数平方根的方法
May 12 Python
Python实现动态加载模块、类、函数的方法分析
Jul 18 Python
Python用 KNN 进行验证码识别的实现方法
Feb 06 Python
Python爬虫框架Scrapy常用命令总结
Jul 26 Python
Python 创建新文件时避免覆盖已有的同名文件的解决方法
Nov 16 Python
python+selenium实现QQ邮箱自动发送功能
Jan 23 Python
Python符号计算之实现函数极限的方法
Jul 15 Python
简单了解Python字典copy与赋值的区别
Sep 16 Python
python从PDF中提取数据的示例
Oct 30 Python
Python进程池与进程锁之语法学习
Apr 11 Python
Python Django / Flask如何使用Elasticsearch
Apr 19 Python
Python爬取知乎图片代码实现解析
Sep 17 #Python
Python读写文件模式和文件对象方法实例详解
Sep 17 #Python
Python爬取破解无线网络wifi密码过程解析
Sep 17 #Python
Python使用random模块生成随机数操作实例详解
Sep 17 #Python
python同时替换多个字符串方法示例
Sep 17 #Python
python 函数的缺省参数使用注意事项分析
Sep 17 #Python
Python 字符串、列表、元组的截取与切片操作示例
Sep 17 #Python
You might like
PHP面向对象编程快速入门
2006/12/14 PHP
php批量缩放图片的代码[ini参数控制]
2011/02/11 PHP
PHP判断手机是IOS还是Android
2015/12/09 PHP
PHP中__autoload和Smarty冲突的简单解决方法
2016/04/08 PHP
Javascript load Page,load css,load js实现代码
2010/03/31 Javascript
Javascript中各种trim的实现详细解析
2013/12/10 Javascript
jQuery获取和设置表单元素的方法
2014/02/14 Javascript
通过jquery 获取URL参数并进行转码
2014/08/18 Javascript
基于jquery实现在线选座订座之影院篇
2015/08/24 Javascript
jquery获取复选框的值的简单实例
2016/05/26 Javascript
javascript类型系统——undefined和null全面了解
2016/07/13 Javascript
BootStrap Datepicker 插件修改为默认中文的实现方法
2017/02/10 Javascript
canvas 实现中国象棋
2017/02/17 Javascript
JQuery查找子元素find()和遍历集合each的方法总结
2017/03/07 Javascript
node.js操作mongodb简单示例分享
2017/05/25 Javascript
微信小程序的注册页面包含倒计时验证码、获取用户信息
2019/05/22 Javascript
使用element-ui的el-menu导航选中后刷新页面保持当前选中状态
2019/07/19 Javascript
layui固定下拉框的显示条数(有滚动条)的方法
2019/09/10 Javascript
echarts实现折线图的拖拽效果
2019/12/19 Javascript
NodeJS开发人员常见五个错误理解
2020/10/14 NodeJs
[03:34]2014DOTA2西雅图国际邀请赛 淘汰赛7月15日TOPPLAY
2014/07/15 DOTA
python实现的各种排序算法代码
2013/03/04 Python
Python import自定义模块方法
2015/02/12 Python
按日期打印Python的Tornado框架中的日志的方法
2015/05/02 Python
Python中用PIL库批量给图片加上序号的教程
2015/05/06 Python
TensorFlow搭建神经网络最佳实践
2018/03/09 Python
python给微信好友定时推送消息的示例
2019/02/20 Python
python使用matplotlib绘制雷达图
2019/10/18 Python
Python爬虫Scrapy框架CrawlSpider原理及使用案例
2020/11/20 Python
python+selenium实现12306模拟登录的步骤
2021/01/21 Python
python 第三方库paramiko的常用方式
2021/02/20 Python
全球地下的服装和态度:Slam Jam
2018/02/04 全球购物
公司担保书格式范文
2014/05/12 职场文书
安全生产月标语
2014/10/07 职场文书
新入职员工工作总结
2015/10/15 职场文书
公安忠诚教育心得体会
2016/01/23 职场文书