Python内置函数之-property
property 是一个内置的装饰器函数,只在面向对象中使用
求一个圆的周长和面积
# 周长和面积都是通过类的方法得到
from math import pi
class Cricle:
def __init__(self,r):
self.r = r def getPerimeter(self):
return 2*pi*self.r def getArea(self):
return pi*self.r**2
c1 = Cricle(5)
print(c1.getPerimeter())
print(c1.getArea())
# 人的BMI,它是计算得来得,但更像是一个人的属性 # 传统做法
class Person:
def __init__(self,name,high,weight):
self.name = name
self.high = high
self.weight = weight def getBIM(self):
return self.weight/(self.high**2) wangys=Person('wangys',1.75,70)
print(wangys.getBIM()) # perporty
class Person:
def __init__(self,name,high,weight):
self.name = name
self.high = high
self.weight = weight @property
def bim(self):
return self.weight/(self.high**2) wangys=Person('wangys',1.75,70)
print(wangys.bim)
class Goods: # 定义了一个商品类
discount = 0.5 # 折扣是5折
def __init__(self,name,price):
self.name = name
self.__price = price # 将需要修改的属性设置成为私有属性 @property
def price(self): # 定义一个正常的属性,然后做相应的操作
return self.__price * Goods.discount apple = Goods('apple',10)
print(apple.price)
class Persion:
def __init__(self,name):
self.__name = name @property
def name(self):
return self.__name
@name.setter
def name(self,new_name):
self.__name = new_name
# 但是圆的周长和面积更像圆的属性,使用property 将一个函数(无参数)伪装成一个类的属性 from math import pi
class Cricle:
def __init__(self,r):
self.r = r @property
def perimeter(self):
return 2*pi*self.r
@property
def area(self):
return pi*self.r**2 c1 = Cricle(5)
print(c1.perimeter)
print(c1.area)
Python内置函数之-property的更多相关文章
- Python内置函数(63)——property
英文文档: class property(fget=None, fset=None, fdel=None, doc=None) Return a property attribute. fget is ...
- Python内置函数(51)——property
英文文档: class property(fget=None, fset=None, fdel=None, doc=None) Return a property attribute. fget is ...
- Python 内置函数笔记
其中有几个方法没怎么用过, 所以没整理到 Python内置函数 abs(a) 返回a的绝对值.该参数可以是整数或浮点数.如果参数是一个复数,则返回其大小 all(a) 如果元组.列表里面的所有元素都非 ...
- python内置函数大全(分类)
python内置函数大全 python内建函数 最近一直在看python的document,打算在基础方面重点看一下python的keyword.Build-in Function.Build-in ...
- python内置函数详细介绍
知识内容: 1.python内置函数简介 2.python内置函数详细介绍 一.python内置函数简介 python中有很多内置函数,实现了一些基本功能,内置函数的官方介绍文档: https: ...
- Python内置函数7
Python内置函数7 1.propertypython内置的一个装饰器可参考https://blog.csdn.net/u013205877/article/details/77804137 2.q ...
- Python内置函数6
Python内置函数6 1.license() 输出当前python 的license信息 A. HISTORY OF THE SOFTWARE ========================== ...
- Python补充--Python内置函数清单
Python内置函数 Python内置(built-in)函数随着python解释器的运行而创建.在Python的程序中,你可以随时调用这些函数,不需要定义.最常见的内置函数是: print(&quo ...
- python之Python内置函数一览表
Python 解释器自带的函数叫做内置函数,这些函数可以直接使用,不需要导入某个模块. 如果你熟悉 Shell 编程,了解什么是 Shell 内置命令,那么你也很容易理解什么是 Python 内置函数 ...
随机推荐
- Python——Tk控件说明
控件 描述 具体说明 Button 按钮 点此链接 Canvas 提供绘图形状的功能,包含图像和位图 点此链接 Checkbutton 多选框 点此链接 Entry 单行文本框 点此链接 Fr ...
- pymongo 操作
python 操作 mongoDB 模块 pymongo 安装方法 sudo pip3 install pymongo 操作步骤 1. 创建数据库连接对象 conn = pymonge.MomgoCl ...
- webpack学习记录 - 学习webpack-dev-server(三)
怎么用最简单的方式搭建一个服务器? 首先安装插件 npm i --save-dev webpack-dev-server 然后修改 packet.json 文件 "scripts" ...
- log4j 初体验
1.Log4j简介 在应用程序中添加日志记录目的基于三个: 监视代码中变量的变化情况,周期性的记录到文件中供其他应用进行统计分析工作 跟踪代码运行时轨迹,作为日后审计的依据 担当集成开发环境 ...
- 2017-12-19python全栈9期第四天第二节之列表的增删查改之删除的pop和del和remove和clear
#!/user/bin/python# -*- coding:utf-8 -*-li = ['zs','ls','ww','zl']# name = li.pop(1) #按索引位置删除有返回值# n ...
- usb输入子系统写程序(三)
目录 usb输入子系统写程序 小结 内核修改 怎么写代码 类型匹配 probe disconnect 程序设计 1th匹配probe 2th 获取usb数据 3th 输入子系统上报按键 title: ...
- 通过Visualizing Representations来理解Deep Learning、Neural network、以及输入样本自身的高维空间结构
catalogue . 引言 . Neural Networks Transform Space - 神经网络内部的空间结构 . Understand the data itself by visua ...
- openstack项目【day24】:keystone部署及操作
阅读目录 一 前言 二 版本信息 三 部署keystone 四 keystone操作 五 验证 六 创建脚本 七 keystone使用套路总结 一 前言 任何软件的部署都是没有技术含量的,任何就部署讲 ...
- Mybatis-generator自动生成器
目录 前言牢骚 Mybatis-generator是什么? Mybatis-generator怎么使用? 第一步,Maven文件引用 第二步,数据库建立 第三步,写mybatis-generator. ...
- C++回顾day02---<运算符重载>
一:运算符重载的限制 (一)可以重载的运算符: + - * / % ^ & | ~ ! = < > += -= *= /= %= ^= &= |= << > ...