Python3:来自同一个类的两个对象有何不同?

时间:2016-12-09 14:45:17

标签: python oop

我正在看下面的简单python代码

class Robot:
    pass

if __name__ == "__main__":
    x = Robot()
    y = Robot()
    y2 = y
    print(y == y2)
    print(y == x)

,输出

True
False

我理解,这是OOP概念的优势。但是什么使它变得不同,就像当两个不同的对象引用同一个类时,它们几乎具有相同的属性但是有些不同,我想知道不同的属性。

编辑:我认为这个问题与下面给出的问题不重复。我希望看到每个对象更像骨架结构。他们有不同的ID我可以理解,因为python中的对象ID概念类似于variable ID's concept,只有ID分配概念。

谢谢。

1 个答案:

答案 0 :(得分:0)

它被称为 identity ,您可以使用函数id获取(数字表示)。

print(id(x))
print(id(y))
print(id(y2))

163193456
163193584
163193584

在两个对象中唯一不同的是标识(在id上调用它们的结果,如果你想要实用的话)。其他一切都可以是一样的。