广告
返回顶部
首页 > 资讯 > 后端开发 > Python >Python学习之property
  • 325
分享到

Python学习之property

Pythonproperty 2023-01-30 22:01:56 325人浏览 薄情痞子

Python 官方文档:入门教程 => 点击学习

摘要

python中使用Property函数可以将类中的函数当作属性来调用。 案例 1 __metaclass__=type 2 class Rectangle: 3 def __init__(self): 4

python中使用Property函数可以将类中的函数当作属性来调用。

案例

 1 __metaclass__=type
 2 class Rectangle:
 3     def __init__(self):
 4         self.width=0
 5         self.height=0
 6     def setSize(self,size):
 7         self.width,self.height=size
 8     def getSize(self):
 9         return self.height,self.width
10     size=property(getSize,setSize)
11 r=Rectangle()
12 r.width=10
13 r.height=5
14 ret=r.size
15 print(ret)
16 r.size=100,50
17 rets=r.width
18 print(rets)

输出结果:

1 (5, 10)
2 100

Property函数创建了一个属性size,此时访问器函数被用做参数(先取值,再赋值)。尽管它们看起来像属性一样,但size的特性依旧取决于getSize和setSize的计算。

实际上 Property并不是一个真正的函数而是拥有很累特殊方法的类,而正是这些方法才能完成所有的工作。 涉及方法:

以上三种方法定义描述符的规则,实现了其中任何一个方法的对象就叫做描述符。描述符的特殊之处在于他们是如何被访问的。比如,程序读取一个特性时,如果该特性被绑定到了实现__get__方法的对象上,那么就会调用__get__方法而不是简单的返回对象。这就是对象的属性机制也叫绑定方法。

 

--结束END--

本文标题: Python学习之property

本文链接: https://www.lsjlt.com/news/179915.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Python学习之property
    Python中使用Property函数可以将类中的函数当作属性来调用。 案例 1 __metaclass__=type 2 class Rectangle: 3 def __init__(self): 4 ...
    99+
    2023-01-30
    Python property
  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-...
    99+
    2023-01-31
    之路 Python
  • python学习之--习题集
    1.什么是PVM?pvm是python的虚拟机,它是python运行时引擎解释编译得到的代码...
    99+
    2023-01-31
    习题集 python
  • Python学习之------retry
    在做数据抓取的时候,经常遇到由于网络问题导致的程序保存,先前只是记录了错误内容,并对错误内容进行后期处理。 原先的流程: def crawl_page(url): pass def log_error(url): ...
    99+
    2023-01-31
    Python retry
  • python之syslog学习
    大家在写程序时,都喜欢将过程和输出结果以log的形式保留下来,供参考。大部分朋友都采取的是open方式打开一个文件句柄方式,将其信息write进去,今天我学习的是采取unix或者类unix提供的一个syslog服务。在我们的python里提...
    99+
    2023-01-31
    python syslog
  • Python学习之类
    前言:之前写的博客,都是借鉴别的博文或者是环境的配置,没有自己的东西,掌握的很少。以后的博文,我都会尽力加上一些自己的东西。现在开始进入我的python世界吧!为什么要有类:在面向对象编程中,你要通过类来创建对象。通过类你可以对对象进行定义...
    99+
    2023-01-31
    Python
  • python 学习之 PythonAdv
    #!/usr/bin/python #coding=utf-8 #词典 ''' nl = [1, 3, 8] nl.append(15) print nl bl = [2, 3, 5] print nl + bl dic = {'tom':...
    99+
    2023-01-31
    python PythonAdv
  • python学习之路
    第一部分    使用入门1、人们选择python的六个主要原因是什么?①软件质量、开发者的效率、程序的可移植性、标准库的支持、组件集成和享受简便,其中质量和效率是选择python的主要原因。2、请列举正在使用python的四个著名公司的名字...
    99+
    2023-01-31
    之路 python
  • Python学习之List
    **Python的列表可以存儲任何數據類型,包括列表本身。它是通過索引訪問。**Python的索引值是從0開始的,以些類推**Python是通過中括號來包含所有的值,值與值之間通過","號分隔**查看python列表的擁有哪些方法,可以通過...
    99+
    2023-01-31
    Python List
  • python学习之---mutable
    python的数据类型分为mutable(可变) 和 immutable (不可变) mutable : list ,dict inmutable : int , string , float ,tuple... mutable和immu...
    99+
    2023-01-31
    python mutable
  • python学习之道
    2018/3/16开始学习python这门语言的第一天,我的职业是网络工程师,数通无线安全方向,因为对技术比较喜欢,所以在工作之余会学习一些高端的技术,比如:虚拟化,存储之类的,现在网络工程师已经越来越多了,而且传统技术是过不了多少年的,所...
    99+
    2023-01-31
    之道 python
  • python学习之pandas
    #Pandas'''1,Pandas是Python的一个数据分析报包,该工具为解决数据分析任务而创建。2,Pandas纳入大量库和标准数据模型,提供搞笑的操作数据集所需的工具3.pandas提供大量能使我们快速便捷地处理数据的1函数方法4,...
    99+
    2023-01-31
    python pandas
  • python学习之matplot
    import matplotlib.pyplot as pltimport numpy as npimport pandas as pdfrom mpl_toolkits.mplot3d import Axes3Dimport matp...
    99+
    2023-01-31
    python matplot
  • Python学习之初识Python
    Python作为一种面向对象,解释型的程序语言。拥有简洁(通过缩进来区别不同的语句块),丰富强大的库。可以将多个模块导入使用的特性又被称之为脱水语言。Django可作为Python的Web开发框架语句块:   Python通过相同的缩进来确...
    99+
    2023-01-31
    Python
  • python之cmd库学习
    一:cmd介绍    引用python的官方文档    The cmd class provides a simple framework for writing line-oriented command interpreters.  T...
    99+
    2023-01-31
    python cmd
  • python学习之路(1)
    今天刚入门python,对于有c和java基础的我,学习起来还是比较容易的,我并没有用PyCharm写,而是最基础的IDLE,学习python比java容易的地方就是不要写分号,不要打包,不要定义等等,可能是我还学习的不够深入吧。 今天的...
    99+
    2023-01-31
    之路 python
  • python学习之列表
    序列是python的最基本数据结构,序列的每个元素都分配一个数字,它的索引,第一个是0,第二个是1,依次类推;python的6个内建的序列分别是列表,元祖,字符串,unicode字符串,buffer对象和xrange对象;序列通用操作包含...
    99+
    2023-01-31
    列表 python
  • python学习之反射
    python学习反射实例1脚本内容如下:#coding: utf8class myClass(object):    def fax(self):        print 'faxing....'    def copy(self):  ...
    99+
    2023-01-31
    反射 python
  • python学习之元组
    在python中,元组使用小括号,小括号的元素使用逗号隔开即可; 1.元组和列表的区别元组和列表的相同点就是都是序列类型的容器对象,可以存放任何类型的数据,支持切片,迭代操作等;元组和列表的不同点是元组是不可变类型,大小固定,而列表是可变...
    99+
    2023-01-31
    python
  • python的学习之旅
        首先先介绍下本人,本人名叫杜邱,别名也叫故都的秋,网络工程专业毕业,现就职一家电子商务公司,已经三年了,起初从一个小小的网管做起,一台路由器,一台交换机,下面连着50几台电脑,三年过去了,慢慢的也在成长,装过监控,管过服务器,弄过网...
    99+
    2023-01-31
    之旅 python
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作