代码之家  ›  专栏  ›  技术社区  ›  Ram Vallury

Python中的两个变量具有相同的id,但没有列表或元组

  •  55
  • Ram Vallury  · 技术社区  · 8 年前

    Python中的两个变量具有相同的 id :

    a = 10
    b = 10
    a is b
    >>> True
    

    如果我拿两个 list 秒:

    a = [1, 2, 3]
    b = [1, 2, 3]
    a is b
    >>> False
    

    根据 this link Senderle回答说,不可变对象引用具有相同的id,而列表等可变对象具有不同的id。

    a = (1, 2, 3)
    b = (1, 2, 3)
    a is b
    >>> False
    

    理想情况下,由于元组是不可变的,它应该返回 True ,但它正在返回 False

    4 回复  |  直到 7 年前