Python 什么';声明'class A'和'class A()'之间的区别是什么?
我们在python中定义类如下:Python 什么';声明'class A'和'class A()'之间的区别是什么?,python,python-3.x,class,Python,Python 3.x,Class,我们在python中定义类如下: class A: def x(self): print("In x") 但我刚刚输入了一个错误,它在linux cli中用python版本3.7成功执行。这是: class A(): def x(self): print("In x") 这意味着什么?您可以选择使用Python中的语法类Child(Parent):。在括号中不保留任何参数与不保留括号是一样的:您只需从基对象类继承,其他什么都不继承。例如: cl
class A:
def x(self):
print("In x")
但我刚刚输入了一个错误,它在linux cli中用python版本3.7成功执行。这是:
class A():
def x(self):
print("In x")
这意味着什么?您可以选择使用Python中的语法类Child(Parent):
。在括号中不保留任何参数与不保留括号是一样的:您只需从基对象
类继承,其他什么都不继承。例如:
class A:
pass
class B(object):
pass
class C():
pass
import inspect
inspect.getmro(A)
# (__main__.A, object)
inspect.getmro(B)
# (__main__.B, object)
inspect.getmro(C)
# (__main__.C, object)
都是同等的。作为反例:
class D(A): # inherit from A
pass
inspect.getmro(D) # should include A now
# (__main__.D, __main__.A, object)
在Python2.x中会有所不同,但在python3中是相同的 长版本 A类(对象): 通过 与 类别A(): 通过 因为对象是类的默认输入 这只是上面的一个更短的版本 A类: 通过