python class和class(object)用法区别

Posted duck_lu

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python class和class(object)用法区别相关的知识,希望对你有一定的参考价值。

开始是看廖大的教程的时候有的疑惑

class a(object):   和 class a:  有什么区别

于是上网搜了搜,发现在python2里是有区别的,原贴https://my.oschina.net/shyl/blog/692930:

 

于是,我用python3试了下,发现好像没有区别了:

 1 class Animal(object):
 2     print(test)
 3 
 4 a = Animal()
 5 print(a.__class__)
 6 print(type(Animal))
 7 print(type(a))
 8 
 9 class Duck():
10     print(test)
11 
12 b = Duck()
13 print(b.__class__)
14 print(type(Duck))
15 print(type(b))

result:

1 <class __main__.Animal>
2 <class type>
3 <class __main__.Animal>
4 test
5 <class __main__.Duck>
6 <class type>
7 <class __main__.Duck>

而且我去查阅文档时,发现文档的类都是这么写的

1 class ClassName:
2     <statement-1>
3     .
4     .
5     .
6     <statement-N>

总结:python2是有区别的,python3没有了

以上是关于python class和class(object)用法区别的主要内容,如果未能解决你的问题,请参考以下文章

hausaufgabe--python 39 -- objects and class

Python - Class and Objects

Python class and object

python的class(类)中的object是什么意思?

带你完全理解Python中的metaclass,type,class之间的恩怨情仇...

python-基础-isinstance(p_object, class_or_type_or_tuple)