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. ArcGIS for Desktop入门教程_第二章_Desktop简介 - ArcGIS知乎-新一代ArcGIS问答社区
  2. 计算机网络相关知识 参考博客 子网掩码怎么理解 网关及网关的作用 路由器基础知识详解
  3. C语言 · 前10名
  4. JS基础_强制类型转换-Number
  5. 注解 @Target 用法
  6. 惊现漏洞门!大众汽车被曝安全风险,1分钟内即可轻易解锁
  7. 通过Xshell来访问和连接Linux
  8. 学习python: 单例设计模式
  9. paip.截屏功能流程说明
  10. sysmon安装报错“error getting the evt dll (wevtapi.dll): 87”解决办法
  11. illustrator插件-常用功能开发-直角圆角化-js脚本开发-AI插件
  12. MLX90614红外测温传感器使用arduino采集温度数据OLED显示
  13. java置换_java实现置换密码加密解密
  14. 飞秋教程(飞秋应用管理器)
  15. 坚果X3怎么样好不好值得买吗,和当贝X3哪款好这篇告诉你
  16. error: cannot lock ref 'refs/remotes/origin/master': unable to resolve reference 'refs/remotes/origi
  17. 几款好用的Markdown 写作工具推荐(上)
  18. 2019年,这些豆瓣评分9.0以上的8本程序员好书你都知道吗?
  19. 电能质量:闪变和波动
  20. i217lm网卡驱动linux,Intel英特尔I217/I218/I219系列网卡驱动

热门文章

  1. echarts散点图加图片
  2. 群辉安装自定义mysql_群晖下docker搭建mysql环境体会
  3. HDOJ -- 1285 确定比赛名次
  4. python使用QQ发邮件成功后发件箱无记录bug解决
  5. Win10进不去,卡在欢迎界面
  6. 国际电动汽车标准现状,相关IEC国际标准
  7. 关于Steam上功能面板引起的程序崩溃问题
  8. 一切过去,皆为序章-------十一月总结
  9. Cookie大总结(来自网易)
  10. 掌握这三点,工作不用愁