property简单知识点
property属性
除去类属性和实例属性外另外一种属性
普通的方法前边加了一个property之后,接下来就由一个特殊功能的体现
在调用 proop的方法的时候就变了,仔细观察上图中最后一行,发现调用prop方法没有写(),这样的形式一般返回一个值。
这就是property,而且返回的值是代码,foo_obj.pop的返回值
这就是property属性
property给人的感觉是明明调用函数但是却看上去访问了一个属性。所以可读性上来讲size的可读性更高。方便
property有个特点,就是例如上图中装饰只有一个size,不能再多。
以下的两个例子说明
以上图片说明了property属性调用size的时候其实调用的返回值int类型的100
这次多加了一个参数,明显也出错
所以调用property属性的时候不能多写参数。
创建propery属性的方式
创建property属性的方式----装饰器
创建property属性的方式—-类属性
一、创建property属性的方式----装饰器
@property
底下的函数得有返回值
经典类和新式类不一样,如果是经典类python2只用property一种方式
如果是新式类的话就可以用property三种方式以下三种方式
在python3新式类中的三种方式
- 去price的值
- 设置rice的价格
- 删除价格的值
上图中obj.price = 200 传给value
以上是新式类中创建property属性的三种方法
二、创建property属性的方式—-类属性
BAR = property(get_bar)
obj = Fool()# 创建类对象
result = obj.BAR
print(result)
property接收四个参数
以上图中获取,设置,获取文档说明,删除
介绍Django框架和Flask框架,相比来说Flask框架是轻量级框架
Django框架运用了property。Django框架是个特别繁杂的框架
目的:简化流程
property应用场景demo
定义了一个类,类中有一个私有属性,不想让对象直接获取私有属性的值,因此设置一个方法获取值。get方法和set方法一般在其他语言中配合。可以权限验证,ifinstance如果是int类型则值为True,如果在isinstace的值传过来的是数字,则把数字传给money。起到了防护和验证作用。但是python不这么做
看以下代码,使用property属性使得其私有属性验证和防护更加容易使用property属性使得其达到了数据过滤的作用
property简单知识点相关推荐
- 13. 找出数组中重复的数字【难度: 简单 / 知识点: 模拟】
13. 找出数组中重复的数字[难度: 简单 / 知识点: 模拟] 方法一: map 计数 时间复杂度O(nlongn) 空间复杂度多了一个二叉树 class Solution {public:int ...
- Linux简单知识点梳理(持续更新中)_莫韵乐的Linux王国
Linux简单知识点梳理(持续更新中) Linux系统特点 特点 开放性 多用户 良好的用户界面 提供丰富的网络功能 设备独立性 可靠的系统安全 良好的可移植性 ##### Linux系统体系结构 名 ...
- html5移动web开发简答题,HTML5移动Web开发简单知识点介绍
原标题:HTML5移动Web开发简单知识点介绍 1 :基于HTML5的移动Web应用 Canvas绘图:通过获取HTML中的Dom元素Canvas,调用其渲染上下文的Context对象,使用Js进行图 ...
- 【C语言基础】利用C语言简单知识点实现计算器加减乘除运算功能
利用循环语句以及函数调用实现计算器的简单功能 计算器是我们在学习生活中不可或缺的一个工具,有时候要计算一些比较复杂的数据时只能借助于计算器.基本上每个人都会使用计算器,那么如何利用C语言设计出一个自己 ...
- Java简单知识点小结
1.AJAX 1. 概念: ASynchronous JavaScript And XML 异步的JavaScript 和 XML1. 异步和同步:客户端和服务器端相互通信的基础上* 客户端必须等待服 ...
- 1132 Cut Integer (20 分)【难度: 简单 / 知识点: 模拟】
https://pintia.cn/problem-sets/994805342720868352/problems/994805347145859072 就是简单的模拟即可. #include< ...
- mtk-drm property简单理解
前面我们已经知道了,应用层通过修改property,然后调用AtomicCommit来统一提交修改,要理解property需要先理解drm_mode_object. drm_mode_object是K ...
- 数据库索引的简单知识点
一.一张图表示myisam和Innodb储存引擎的区别? 二.创建索引的几大原则 2.1 列的离散型 离散型的计算公式:count(distinct column_name):count(*),就是用 ...
- 1152 Google Recruitment (20 分)【难度: 简单 / 知识点: 模拟】
https://pintia.cn/problem-sets/994805342720868352/problems/1071785055080476672 #include<bits/stdc ...
最新文章
- android studio使用nodejs本地服务器json数据_使用Node.js的Alexa技巧
- Python基础-re模块
- why SpringComponentScanServer is needed
- 7z解压crc错误_winrar压缩包提示crc校验和错误,文件被破坏的解决办法
- C\C++ 获取当前路径
- 浙大 PAT a1027
- struts2(2012/2/25)
- C# WPF网络实时监测客户端
- Oracle与MySQL的备份还原及密码修改等
- Chrome浏览器快捷键大全
- 微信公众号申请开通微信支付
- 性能测试瓶颈分析与系统调优(1)项目部署与测试环境工具安装
- 数据分析方法论2:交叉平均分析法
- 肠道核心菌属——优/真杆菌属(Eubacterium),你为什么要关心它?
- 数据库系统:第二章关系数据库
- Tabby sftp 下载文件夹
- 腾讯社招 —— 腾讯游戏后端工程师(一面)
- 转载:汶川大地震中业余无线电应急通讯发挥作用
- std::string int 转换
- 自动售货机html代码,自动售货机系统源代码.doc