手抄报 安全手抄报 手抄报内容 手抄报图片 英语手抄报 清明节手抄报 节约用水手抄报

python定义新式类需要继承object吗

时间:2024-10-14 20:01:55

1、首先我们在pycharm中将运行环境设置成python2.7版本

python定义新式类需要继承object吗

2、然后定义一个不继承object的类A,接着用dir方法来打印下类A的对象中所包含的属性和方法,可以看到只有两个方法

python定义新式类需要继承object吗

3、接着我们让A类继承object类(注意object类首字母是小写,这是之前版本的遗留问题, java中为Ob枣娣空郅ject类,现在新版python规范中类命名也是和Java一样建议使用驼峰法),然后再打印一次,可以看到对象a的方法多了很多,这样的类就是新式类

python定义新式类需要继承object吗

4、接着我们将python版本切换到3.5

python定义新式类需要继承object吗

5、运行不继承object的A类,发现这竟然是新式类

python定义新式类需要继承object吗

6、运行继承object的A类,结果没有任何变化

python定义新式类需要继承object吗

7、总结下:也就是说,在python3.x中只有新式类,在python2.x中存在经典类,如果你的开发环境是2.x,那就要注意继承object荑樊综鲶,如果你的开发环境是3.x,可以不继承object,但是如果你希望你的代码兼容性高一点,最好在3.x的环境下也显式继承object,这样在2.x环境下跑也不会出问题.

© 手抄报圈