两个python对象具有相同的ID,但“ is”操作返回false,如下所示:
a = np.arange(12).reshape(2, -1)
c = a.reshape(12, 1)
print("id(c.data)", id(c.data))
print("id(a.data)", id(a.data))
print(c.data is a.data)
print(id(c.data) == id(a.data))
Run Code Online (Sandbox Code Playgroud)
这是实际输出:
id(c.data) 241233112
id(a.data) 241233112
False
True
Run Code Online (Sandbox Code Playgroud)
我的问题是...为什么“ c.data是a.data”即使它们指向相同的ID,从而指向相同的对象,也返回false?我以为如果它们具有相同的ID,它们指向相同的对象,或者我错了吗?谢谢!