Python id()函数

原文: https://thepythonguru.com/python-builtin-functions/id/


于 2020 年 1 月 7 日更新


id()函数返回与对象关联的唯一数字标识符。

在标准 Python(即 CPython)中,标识符表示对象的内存地址。 虽然,这在其他实现中可能会有所不同。

定义对象时,唯一标识符会自动存在,并且在程序运行之前不会更改。 我们可以使用此标识符来确定两个对象是否相同。

id()函数的语法如下:

  1. id(obj) -> unique identifier

这是一个例子:

  1. >>>
  2. >>> a = 10
  3. >>>
  4. >>> b = 5
  5. >>>
  6. >>>
  7. >>> id(a), id(b)
  8. (10919712, 10919552)
  9. >>>
  10. >>>
  11. >>> a = b # a now references same object as b
  12. >>>
  13. >>>
  14. >>> id(a), id(b)
  15. (10919552, 10919552)
  16. >>>
  1. a = 10
  2. b = 5
  3. print(id(a), id(b))
  4. a = b # a now references same object as b
  5. print(id(a), id(b))

最初,变量ab引用两个不同的对象。 结果,id()调用返回两个唯一标识符。 接下来,我们将对象b分配给a。 现在,ab引用相同的对象(5)。 因此,下一个id()调用返回相同的标识符。