代码之家  ›  专栏  ›  技术社区  ›  Bernard

“==”和“是”之间有区别吗?

  •  571
  • Bernard  · 技术社区  · 17 年前

    我的 Google-fu 他让我失望了。

    在Python中,以下两个相等测试是否等效?

    n = 5
    # Test one.
    if n == 5:
        print 'Yay!'
    
    # Test two.
    if n is 5:
        print 'Yay!'
    

    对于要比较实例(a)的对象,这是否成立 list

    好的,这样回答了我的问题:

    L = []
    L.append(1)
    if L == [1]:
        print 'Yay!'
    # Holds true, but...
    
    if L is [1]:
        print 'Yay!'
    # Doesn't.
    

    所以 == is 测试它们是否是同一个对象?

    20 回复  |  直到 7 年前