如果我有此代码:

class Fish(object):
    pass
class Salmon(Fish):
    pass


Salmon是类Fish中的对象吗?实例是哪一个? x = Salmon()叫什么?

最佳答案

让我开始简单:在Python中,所有内容都是object

但是我想您将中的“来自类的对象”(我想您的意思是“类的实例”?)混淆了:

class Fish(object):
    pass


创建一个从Fish继承的类object。同样地:

class Salmon(Fish):
    pass


创建一个从Salmon继承的类Fish

在正常情况下,它们都不是“实例”。它们实际上是“实例”:它们都是type的实例(而后者又是子类的对象)是所有类的基元类,但可能要花很多。如果您想了解更多信息,请使用Python检出元类。

实际创建instance的是x = Salmon():这将创建Salmon的实例。

关于python - 了解Python类和对象,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/44671443/

10-13 09:35