我试过阅读文档,但无法得到明确的答案。
时
id(a) == id(b)
与
相同a is b
同样是
import unittest
unittest.TestCase.assertNotEqual(id(a), id(b))
因此与
相同import unittest
unittest.TestCase.assertIsNot(a, b)
答案 0 :(得分:1)
是强>
CPython中的“id”为您提供所引用对象的内存地址。该地址唯一标识同一python进程中的对象。
因此,
的含义id(a) == id(b)
是“实例a和b的内存地址是否相同?”相当于 “a和b是否引用同一个对象?”:
a is b
来自“id”的文档字符串:
id(object) - >整数
返回对象的标识。这保证是独一无二的 同时存在的对象。 (提示:它是对象的内存地址。)