• 1、检查、判断

判断一个类是不是另一个类的子类

issubclass(class, classinfo)如果第一个参数是第二个参数的子类、子子类等,返回true

  • 非严格(自己可以认为是自己的子类);
  • 第二个参数可以是由多个class组成的tuple,有任何一个合适,就true;
  • 其他情况对抛出typeerror

判断一个对象是不是某个类的实例对象

isinstance(object, classinfo)检查某第一个参数实例对象是否属于一个类

  • 第二个参数可以是由多个class组成的tuple,有任何一个合适,就true
  • 如果第一个参数传入不是对象类型,永远返回false
  • 如果第二个参数不是类或者由类对象组成的tuple,会抛出TypeError

2、点操作符号访问对象属性,attribute相关:

hasattr(object, name)  对象是否有制定的属性name,name需要用引号括起来,否则他会认为是变量,

getattr(object, name [, default])  获得对象object的name属性值,如果不存在,返回default,若没有设置default,不存在时会抛出AttributeError

  • getattr(A, 'b', '您所访问的属性不存在')

setattr(object, name, value)  设置对象name属性的值为value,若属性不存在会新建新的属性;name加引号

delattr(object, name)  删除指定的属性;若不存在,抛出AttributeError

property()  通过属性设置属性

  • x = property(getSize, setSize, delSize)设置一个x属性,能操作getSize、setSize、delSize(提前自己写好)方法
  • x可以作为调用接口,里边的方法可以大改,比如改名字等,增加方法。
  • 工作原理:组合了几个魔法方法

最新文章

  1. liunx 磁盘管理命令记录
  2. linux引导流程
  3. Maven学习(八)继承和聚合
  4. maven 入门
  5. MES: ESB
  6. 某硕笔试题mysql数据库部分(较为全面)
  7. JAVA 多态和异常处理作业——动手动脑以及课后实验性问题
  8. Effective java笔记4--方法
  9. IP地址爬取
  10. php 四种基础算法 ---- 选择排序法
  11. HTML初学者常用标签及属性
  12. Redis在Php项目中的实际应用场景
  13. python中的类
  14. saltstack高效运维
  15. C#项目学习记录
  16. [P4994]终于结束的起点 (递推)
  17. JS------获取一个时间区间的所有天
  18. Python 多线程、多进程 (三)之 线程进程对比、多进程
  19. 【bzoj3039】玉蟾宫 悬线法
  20. Misha and Palindrome Degree CodeForces - 501E (回文串计数)

热门文章

  1. std::this_thread::yield/sleep_for
  2. go-defer语句
  3. 21.Nginx代理缓存
  4. java的数制转换(详解,全!)
  5. IntelliJ IDEA 2019.2最新版本免费激活码
  6. C# 闭包对像
  7. Spring框架学习笔记(6)——阿里云服务器部署Spring Boot项目(jar包)
  8. 【IDEA】IDEA自动生成文档注释的设置方法
  9. Topshelf+Quartz在.Net Core框架下的实现
  10. 关于Map集合注意事项