import mathclass Circle:def __init__(self, radius):self.__radius = radius      # 设置私有属性,不让用实例.__radius访问def __get_radius(self):return round(self.__radius, 1)def __set_radius(self, radius):if not isinstance(radius, (int, float)):raise TypeError('wronge type')self.__radius = radius@propertydef S(self):return self.__radius ** 2 * math.pi      #property第二种方法,加装饰器@property@S.setterdef S(self, s):self.__radius = math.sqrt(s / math.pi)    #property第二种方法,加装饰器@S.setterR = property(fget=__get_radius, fset=__set_radius)    #property其中一种方法,定义类变量c = Circle(5.712)print(c.R)  #调用了get_radius方法获取半径
c.R = 8.886 #调用了set_radius,设置半径
print(c.R)
print('=======================')
print(c.S)  #调用S方法获取面积
c.S = 3.14  #设置面积
print(c.R)
print(c.S)==================================================================
5.7
8.9
=======================
248.063284953733
1.0
3.14

【python】使用property函数为类创建可管理属性fget\fset\fdel相关推荐

  1. Python使用property函数为类创建管理方法属性

    1.如何创建可管理的对象属性? 实际案例: 在面向对象编程中,我们把方法(函数)看作对象的接口,直接访问对象的属性可能是不安全的,或设计上不够灵活.但是使用调用方法在形式上不如访问属性简洁. # 创建 ...

  2. python中property函数_python 邮件表格Python中property函数用法实例分析

    本文实例讲述了Python中property函数用法.分享给大家供大家参考,具体如下: 通常我们在访问和赋值属性的时候,都是在直接和类(实例的)的__dict__打交道,或者跟数据描述符等在打交道.但 ...

  3. Python使用property函数和使用@property装饰器定义属性访问方法的异同点分析

    Python使用property函数和使用@property装饰器都能定义属性的get.set及delete的访问方法,他们的相同点主要如下三点: 1.定义这些方法后,代码中对相关属性的访问实际上都会 ...

  4. Python进阶:理解元类创建类ABCMeta

    Python进阶:Python进阶:理解元类创建类ABCMeta 一.理解元类(Meta class) 1.1 元类直观理解 1.2 Python官方文档给出的元类描述 二.理解抽象基类(ABC, A ...

  5. 【Python面试】 说说Python变量、函数、类的命名规则?

    往期面试题: 谈谈对 Python 和其他语言的区别? 说说4种常用编码的区别? 说说Python面向对象三大特性? 说说Python中有几种数据类型? 废话不多说,开始今天的题目: 问:Python ...

  6. python中property函数_Python中的property()函数

    property() 函数的作用是在新式类中返回属性值 1.语法: class property([fget[, fset[, fdel[, doc]]]]) 2.参数: fget -- 获取属性值的 ...

  7. Python使用property函数定义属性访问方法如果不定义fget会怎么样?

    我们知道Python使用property函数定义属性访问方法时的语法如下: 实例属性=property(fget=None, fset=None, fdel=None, doc=None) 而是要@p ...

  8. Python零基础教程:函数和类内建魔法属性

    前言 关于对象的魔法方法我们已经讲得太多,但是对于类或函数内建的魔法属性和功能我们涉及较少,下面系统了解一下类和函数的内建属性. 查看内建属性 class Person(object):passdef ...

  9. python基础之函数和类

    8.函数 #函数 #1.定义函数的关键字 def def greet_user():'''简单的问候语'''print("hello this is function")#调用函数 ...

最新文章

  1. 金融行业数据管理将何去何从?
  2. Tarjan算法学习笔记
  3. html新增了哪些功能,HTML5相比HTML新增了哪些功能?
  4. Errors were encountered while processing 解决方法
  5. CF662C Binary Table(FWT_XOR卷积)
  6. iptables nat实验_【零基础学云计算】LVS负载均衡群集之NAT模式搭建 (实践篇)...
  7. Android中如何查看在res中存放的drawable文件对应的JAVA类型是什么呢
  8. 下载人脸认证助手_关于微信人脸解封验证失败方法
  9. 使用Html5+C#+微信 开发移动端游戏详细教程 :(三)使用html5引擎搭建游戏框架...
  10. window.postMessage 跨窗口,跨iframe javascript 通信
  11. Redis基础学习(2)
  12. java enum private_初步理解Java枚举类型
  13. 《Maven_孔浩》Maven介绍及安装
  14. C# wpf NotifyIcon空间模仿qqz最小化,关闭功能(12)
  15. 简约、高质量简历模板
  16. 画费氏数列螺线的代码
  17. ArcGIS批量按要素裁剪(应用模型)
  18. 一年代码功能点的创新性怎么写_技术部分创新点-新产品
  19. JS实现俄罗斯方块小游戏
  20. 分布式强化学习方法汇总

热门文章

  1. ABP vNext 对接 Ant Design Vue 实现分页查询
  2. 分式的二阶导数怎么求_二阶导数怎么求?
  3. 【bzoj 4202】石子游戏(博弈论+LCT)
  4. 学习笔记: BOOST拓扑
  5. Python if else条件语句你懂了吗?
  6. 「超盘云」品牌全新升级为「热度云」,热度星选完成A2轮融资
  7. 批发订货下单商城系统开发
  8. ORA-04036: PGA memory used by the instance exceeds PGA_AGGREGATE_LIMIT
  9. Knoppix Bug
  10. [附源码]java毕业设计小区供暖收费管理系统