Python 定义类时候加括号和不加括号的区别


新式类与经典类

只有python2.x 中有新式类和经典类的说法,而python3.x 没有,因为其默认都是新式类

python2.x 中默认都是经典类,只有显式的继承了object的才是新式类;在类的多继承中,经典类采用深度优先搜索

python3.x 取消了经典类,默认的都是新式类,且不需要显式继承object类(隐式的继承了object);在类的多继承中,新式类采用广度优先搜索

Tips: object 是python的默认类(list,str,dict 等都是继承了object类的方法)

三种方法

以下三种方法在python 3.x 中都是一致的,而在 python 2.x 中有轻微的区别,不过也不影响使用。

class A:
    pass
    
class A():
    pass
    
class A(object):
    pass

原创文章,作者:jamestackk,如若转载,请注明出处:https://blog.ytso.com/tech/python/276844.html

(0)
上一篇 2022年7月25日 07:12
下一篇 2022年7月25日 11:18

相关推荐

发表回复

登录后才能评论