一、类的成员描述符(property)

类的成员描述符是为了在类中,对类的成员属性进行相关操作而创建的一种方式,大部分属于数据清洗

属性有三种操作:get获取属性值、set修改或添加属性、delete删除属性

使用类的成员描述符,大概有三种方法:

1、使用类实现描述器

2、使用属性修饰符

3、使用property函数,语法是:property(fget, fset, fdel, doc)

无论哪种修饰符都是为了对成员属性进行相应控制:

1、类的方式:适合多个类中的多个属性共用一个描述符

2、property:在当前类中使用,可以控制一个类中多个属性

3、属性修饰符:在当前类中使用,只能控制一个类中的一个属性

二、类常用的内置属性,注意是类的内置属性

__dict__:以字典的格式显示类的成员组成

__doc__:获取类的文档信息

__name__:获取类的名称,如果在模块中使用,则获取模块的名称

__bases__:获取某个类的所有父类,以元祖的方式显示

三、类常用的魔术方法:不需要人为调用的方法,基本是在特定的时刻自动触发

魔术方法统一特征:方法名被前后各两个下划线包裹

操作类:

描述符相关:__set__、__get__、__del__

属性操作相关:

运算类的相关魔术方法:

四、类和对象的三种方法

1、实例方法:需要实例化对象才能使用的方法,使用过程中可能需要借助对象的其他对象方法完成

2、静态方法:不需要实例化,通过类直接访问

3、类方法:不需要实例化

python描述符魔术方法_学习笔记-Python基础9-面向对象编程OOP-类的成员描述符(property)、类的常用内置属性、类的常用魔术方法、类和对象的三种方法...相关推荐

  1. js 把字符串转成json对象的三种方法

    js 把字符串转成json对象的三种方法 不管字符串是否含有转义字符,都能转换成 Json 对象 1, js自带的eval函数,其中需要添加小括号eval('('+str+')'); function ...

  2. Angular Js 判断对象不为空对象的三种方法

    前言 在写前端时,很多时候都需要去校验后端返回的数据是否是个空对象.这里就介绍三种方法 第一种 //将json对象转化为json字符串,再判断该字符串是否为"{}" JSON.st ...

  3. python人工智能入门纳米学位_学习笔记(一) - 机器学习纳米学位

    不久前我在Udacity报名了数据分析和机器学习两门纳米课程.之所以对这个感兴趣是因为关注人工智能方面的资讯有一段时间了,觉得这是未来的趋势,希望今后能够在这方面有所成绩.选择纳米课程是因为我觉得它与 ...

  4. springmvc项目在启动完成之后执行一次方法_学习笔记21-springmvc部分源码学习

    SpringMVC:请求处理流程 这几张图讲的大致都是一个东西,就是springmvc的请求处理流程: ① 用户发送请求到springmvc框架提供的DispatcherServlet 这个前端控制器 ...

  5. python爬b站评论_学习笔记(1):写了个python爬取B站视频评论的程序

    学习笔记(1):写了个python爬取B站视频评论的程序 import requests import json import os table='fZodR9XQDSUm21yCkr6zBqiveY ...

  6. [转载] 黑马程序员_学习笔记8_C#基础归纳之数组

    参考链接: Java中的锯齿数组Jagged array ---------------------- Windows Phone 7手机开发..Net培训.期待与您交流! ------------- ...

  7. 《JavaScript高级程序设计(第四版)》红宝书学习笔记(第五章:基本引用类型,原始值包装类型,单例内置对象)

    第五章:基本引用类型 引用值(或者对象)是某个特定引用类型的实例.新对象通过使用new操作符后跟一个构造函数(constructor)来创建. 5.1 Date 这里不对Date进行详细深入,仅基于书 ...

  8. java学习笔记-第八章:面向对象编程(中级部分)

    第八章:面向对象编程(中级部分) 总体内容 IDEA IDEA介绍 ECLIPSE介绍 IDEA使用 破解IDEA2020.2.2 IDEA工作界面介绍 IDEA调整代码,导航栏的字体大小,主题颜色, ...

  9. B站韩顺平java学习笔记(六)--面向对象编程章节

    目录 一.类和对象 1.定义及区别 2.对象内存布局 3.属性/成员变量 (1)基本介绍 (2)注意事项和细节说明 (3)访问属性 4.对象 (1)创建对象 (2)对象分配机制 ​(3)Java创建对 ...

最新文章

  1. .Net Core下发送WebRequest请求的两种方式
  2. docker笔记1_安装及常用命令
  3. NYOJ 203 三国志(Dijkstra+贪心)
  4. 2020下半年软考-系统架构设计师-惜败
  5. github删除错误的commit并保留之前的提交
  6. android 城市列表数据,用RecyclerView写的城市列表
  7. python数据抓取课程_Python爬虫入门教程 21-100 网易云课堂课程数据抓取
  8. 用户行为变迁 行业垂直深耕——疫情下的2020年移动互联网报告
  9. 水滴石穿C语言之extern声明辨析
  10. PHP Smarty无法解析模板文件
  11. matlab中 编程如和隐藏,在matlab中编程(如何实时处理)
  12. NLP中的绿色Finetune方法
  13. Android BroadcastReceiver(一)
  14. 数据库中自然连接与内连接的区别
  15. android 跳转oppo应用中心_Android唤起应用商店并跳转到应用详情页
  16. C++中指针前还加是什么意思
  17. 第十三届蓝桥杯大赛软件组省赛 Python大学A组 个人题解
  18. CAD中的标注文字如何沿弧线排列?
  19. CSS里的 no-repeat 是什么意思
  20. 通信协议-GMSL(千兆多媒体串行链路)

热门文章

  1. 杭电OJ分类题目(1)
  2. Bailian2767 简单密码(POJ NOI0107-10)【密码】
  3. Bailian2765 POJ NOI0113-03 八进制小数【进制】
  4. 卷积操作中的矩阵乘法(gemm)—— 为什么矩阵乘法是深度学习的核心所在
  5. Need ffmpeg exe. You can download it by calling: imageio.plugins.ffmpeg.download()
  6. matlab 高级函数 —— ind2sub、kron
  7. 如何将 hadoop1.1.2/1.2.1 源码关联到 Eclipse
  8. 计算几何常用算法及numpy仿真
  9. 武春岭 《C语言程序设计》教案PPT,重庆出版社出版,李勇主编的大一C语言课程ppt第1章.ppt...
  10. java数据结构编写二叉树_java 数据结构与算法 BinaryTree二叉树编写