[Python3] 023 面向对象 第三弹
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了[Python3] 023 面向对象 第三弹,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1437字,纯文字阅读大概需要3分钟。
内容图文
7. 类相关函数
函数 | 释义 |
---|---|
issubclass | 检测一个类是否为另一个类的子类 |
isinstance | 检测一个对象是否为一个类的实例 |
hasattr | 检测一个对象是否有成员 xxx |
getattr | get attribute |
setattr | set attribute |
delattr | delete attribute |
- 挖坑
- 对以上几个函数举例
- 坑号编码:Py023-1
8. 类的成员描述符(属性)
- 类的成员描述符是为了在类中对类的成员属性进行相关操作而创建的一种方式
操作 | 释义 |
---|---|
get | 获取属性的操作 |
set | 修改或者添加属性操作 |
delete | 删除属性的操作 |
- 如果想使用类的成员描述符,大概有三种方法
- 使用类实现描述器
- 使用属性修饰符
- 使用 property 函数
- property 函数很简单
- property(fget, fset, fdel, doc)
- 无论哪种修饰符都是为了对成员属性进行相应的控制
- 类的方式:适合多个类中的多个属性共用一个描述符
- property:使用于当前类中,可以控制一个类中多个属性
- 属性修饰符: 使用于当前类中,控制一个类中的一个属性
9. 类的内置属性
内置属性 | 释义 |
---|---|
__dict__
|
以字典的方式显示类的成员组成 |
__doc__
|
获取类的文档信息 |
__name__
|
获取类的名称;如果在模块中使用,获取模块的名称 |
__bases__
|
获取某个类的所有父类,以元组的方式显示 |
10. 类的常用魔术方法
- 魔术方法(魔法方法)就是不需要人为调用的方法,基本是在特定的时刻自动触发
- 魔术方法的统一的特征,方法名被前后各两个下划线包裹
10.1 操作类
魔术方法 | 释义 |
---|---|
__init__
|
构造函数 |
__new__
|
对象实例化方法;此函数较特殊,一般不需要使用 |
__call__
|
对象当函数使用的时候触发 |
__str__
|
当对象被当做字符串使用的时候调用 |
__repr__
|
返回字符串 |
- 挖坑
坑号编码 | 内容 |
---|---|
Py023-2 | 对以上魔术方法举几个简单的例子 |
Py023-3 |
__str__ 跟 __str__ 具体区别 |
10.2 描述符
-
__set__
-
__get__
-
__delete__
10.3 属性操作
-
__getattr__
: 访问一个不存在的属性时触发 -
__setattr__
: 对成员属性进行设置的时候触发- 3 个参数:
- self: 用来获取当前对象
- 第 2 个:被设置的属性名称,以字符串形式出现
- 第 3 个:需要对属性名称设置的值
- 作用:进行属性设置的时候进行验证或者修改
- 注意:在该方法中不能对属性直接进行赋值操作,否则会陷入死循环
- 可对比
7. 类相关函数
- 3 个参数:
- 挖坑
- 给上方两个魔术方法举例
- 坑号编码:Py023-4
10.4 运算分类相关魔术方法
-
__gt__
: 进行大于判断的时候触发的函数- 2 个参数:
- self: 用来获取当前对象
- 第 2 个:第二个对象
- 返回值可以是任意值,推荐返回布尔值
- 2 个参数:
此为听 北京图灵学院的 Python3 公开课 所记笔记
原文:https://www.cnblogs.com/yorkyu/p/10664255.html
内容总结
以上是互联网集市为您收集整理的[Python3] 023 面向对象 第三弹全部内容,希望文章能够帮你解决[Python3] 023 面向对象 第三弹所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。