python新式类和经典类的区别?

1)首先,写法不一样:

class A:

pass

class B(object):

pass

2)在多继承中,新式类采用广度优先搜索,而旧式类是采用深度优先搜索。

3)新式类更符合OOP编程思想,统一了python中的类型机制。

Python 2.x中默认都是经典类,只有显式继承了object才是新式类

Python 3.x中默认都是新式类,不必显式的继承object

其次:

------新式类对象可以直接通过__class__属性获取自身类型:type

------继承搜索的顺序发生了改变,经典类多继承属性搜索顺序: 先深入继承树左侧,再返回,开始找右侧;新式类多继承属性搜索顺序: 先水平搜索,然后再向上移动

------新式类增加了__slots__内置属性, 可以把实例属性的种类锁定到__slots__规定的范围之中

------新式类增加了__getattribute__方法

class A(): def __init__(self): pass def save(self): print "This is from A" class B(A): def __init__(self): pass class C(A): def __init__(self): pass def save(self): print "This is from C" class D(B,C): def __init__(self): pass fun = D() fun.save() 经典类的答案: This is from A 新式类的答案: This is from C

相关报道:

asp.net 开发信息系统,无论是OA或者是其它业务系统中,都会用到新信息提醒功能,特此将方案跟大家分享一下。先上一图给大家看一看: 优点:1)、该新消息弹出提示框样式算是比较不错的,个人认为。 2)、弹出框内的信息内容、提醒的个数、点击链接页面都封 更多

又做了个小题目,报数游戏。 题目详情: 一种报数游戏是从1开始连续报数,如果报到7的倍数(7,14,21,28……)或者包含数字7的数(7,17,27,37……)就用拍手代替这个数而不能报出。假设你连续听到m声拍手,问造成你听到m声拍手的第一下拍手所代表的数是 更多

python新式类好还是经典类_python新式类和经典类的区别?相关推荐

  1. python一般的类有三部分组成_Python学习笔记总结(三)类

    一.类简单介绍 1.介绍 类是Python面向对象程序设计(OOP)的主要工具,类建立使用class语句,通过class定义的对象. 类和模块的差异,类是语句,模块是文件. 类和实例 实例:代表程序领 ...

  2. python中的类怎么定义怎么用_python中怎么定义一个类

    什么是类? 类用来描述具有相同的属性和方法的对象的集合.它定义了该集合中每个对象所共有的属性和方法.对象是类的实例. 什么是方法? 类中的函数即为方法 如何定义一个类? 定义类,语法格式如下:clas ...

  3. python双下划线怎么打出来_Python中单、双下划线的区别总结

    该代码片段来自Django源码(django/forms/forms.py).这段代码的设计就是errors属性是对外API的一部分,如果你想获取错误详情,应该访问errors属性,而不是(也不应该) ...

  4. python class类里给列表排序_python笔记:Class(类)

    在学习python代码中,你是否看到过Class这个词?你是否见过__init__这样的代码?有的书里把这部分内容讲的太过"专业",导致我看了也看不懂.直到看Python Cras ...

  5. python类与方法与函数_Python 中的函数与类的方法

    在 python 中,def 定义的函数与类中的方法有很大的不同,两者是不同的类型. >>> def foo(): ... print "foo" ... > ...

  6. python什么模块动态调用链接库_python 动态调用模块、类、方法(django项目)

    需求:近一段时间基于django框架,开发各业务层监控代码,每个业务的监控逻辑不同,因此需要开发监控子模块,动态的导入调用. 项目名称:demo_django App:common_base.moni ...

  7. 为什么python不报错不出结果_python的坑货ConfigParser类读取文件失败不报错

    python中configparser模块(这个模块有个大坑)可以读取配置文件,当然这个配置文件的格式得按照这个模块指定的.格式如下 [CLICKHOUSE] ip = 172.20.96.78 us ...

  8. python经典排序_python实现十大经典排序算法

    写在前面 本文参考十大经典排序算法(动图演示),这篇文章有动图显示,介绍的很详细.本文是部分内容有借鉴此博客,用python实现,有一些改进. 各种算法的时间.空间复杂度 1.冒泡排序 1.比较相邻的 ...

  9. python中的repr是什么意思_python中str和repr有什么区别

    python中str和repr有什么区别?下面给大家详细介绍: 1.内建函数str()和repr() 或反引号操作符(``)可以方便地以字符串的方式获取对象的内容.类型.数值属性等信息. 2.str( ...

  10. python经典类新式类_Python新式类与经典类(旧式类)的区别

    看写poc的时候看到的,思考了半天,现在解决了 转载自http://blog.csdn.net/zimou5581/article/details/53053775 Python中类分两种:旧式类和新 ...

最新文章

  1. [cocos2dx]防止八门神器修改内存数据
  2. 皮一皮:中国好男友!!!
  3. 洛谷2766:[网络流24题]最长不下降子序列问题——题解
  4. sql server 主从数据库同步 利用发布 订阅是实现
  5. AC自动机解决字符集很大的情况(可持久化数组优化getfail的过程)
  6. 基于Java线程池读取数据库中数据(学习+运用)
  7. Liunx常用的100条命令汇存
  8. Maxcompute造数据-方法详解
  9. OpenJudge NOI 1.9 10:找最大数序列
  10. Python map() ==>根据提供的函数对指定序列做映射
  11. Android QA
  12. Android OpenGL ES 开发教程(24):Depth Buffer
  13. c++矩阵运算库Eigen简介
  14. 甘肃刘家峡赤壁“结”出多彩冰瀑
  15. 微信小程序实现授权登录及退出
  16. 【Origin双y轴】三条曲线,其中两条曲线共用一个y轴
  17. java 轨迹平滑算法_地图坐标轨迹平滑和纠偏
  18. JDK、JRE、Server JRE的简介
  19. vue-cli 项目踩坑 npm install 时出错
  20. 考研联系导师全攻略!

热门文章

  1. mov视频怎么转换mp4格式
  2. TensorFlow 机器学习秘籍第二版:9~11
  3. Google Earth Engine(GEE)——MODIS数据利用地形提取水体面积(以青海省为例)
  4. 测绘学概论第三版——2 大地测量学
  5. 关于举办第二届边缘计算开发者大赛的通知
  6. 程序员,请写健康的代码
  7. 教育的本质是国家和民族的传承
  8. 浅谈CRM系统之客户数据分析
  9. 【财富空间】北京航空航天大学王田苗教授:人工智能与机器人前沿科技发展与投资布局
  10. java sona 插件 提示 整理