代码之家  ›  专栏  ›  技术社区  ›  ninMonkey

在python 2.6-3.x中,class():和class(object):有区别吗?

  •  3
  • ninMonkey  · 技术社区  · 15 年前

    在PY2.6之前,这里已经回答了这个问题。 Difference between class foo and class foo(object) in Python

    但是对于python2.6+和python3.x,第一个错误吗?

    class Foo(): pass VS class Foo(object): pass

    1 回复  |  直到 15 年前
        1
  •  3
  •   Michael Aaron Safyan    15 年前

    对于python2.6+,在python 3.0之前,前者创建一个旧的样式类,而后者创建一个新的样式类。在Python3.0中,两者都创建了一个新的样式。第一个没有错,但是对于3.0之前的任何内容,它的语义都与后者不同,通常不鼓励使用。