我是Python新手。我有一个疑问“如果我在一个脚本中编写两个具有相同名称的类”,但具有不同的功能。当我们运行这个脚本时,将创建哪个类对象?
答案 0 :(得分:2)
它将创建最后定义的类的实例:
class A:
def f(self):
return "a"
class A:
def g(self):
return "b"
a = A()
print a.f() # AttributeError
print a.g() # 'b'
答案 1 :(得分:1)
第二个类将覆盖对第一个类的引用。
>>> class A(object):
... def __str__(self):
... return 'A1'
...
>>> print A()
A1
>>>
>>> class A(object):
... def __str__(self):
... return 'A2'
...
>>> print A()
A2
>>> print A()
A2