zoukankan      html  css  js  c++  java
  • python 中is和= = 的区别

    Python中的对象包含三要素:id、type、value,其中id用来唯一标识一个对象,type标识对象的类型,value是对象的值。

    is判断的是a对象是否就是b对象,是通过id来判断的;

    ==判断的是a对象的值是否和b对象的值相等,是通过value来判断的。

    python对变量是否为None的判断

    python对变量是否为None的判断,有三种主要的写法:

    第一种是if x is None;

    第二种是 if not x:;

    第三种是if not x is None(这句这样理解更清晰if not (x is None)) 。

    在Python中 None, False, 空字符串””, 0, 空列表[], 空字典{}, 空元组()都相当于False 。

    foo is None 和 foo == None的区别

    >>> class foo:
        def __eq__(self, other):
            return True
    
    >>> f = foo()
    >>> f == None
    True
    >>> f is None
    False
    
    >>> list1 = [1, 2, 3]
    >>> list2 = [1, 2, 3]
    >>> list1==list2
    True
    >>> list1 is list2
    False
    
    另外:(ob1 is ob2) 等价于 (id(ob1) == id(ob2))
  • 相关阅读:
    hdu 1257 贪心
    hdu 4301 简单DP
    hdu 4221 贪心
    hdu 4223 排序
    hdu 4217 树状数组+二分搜索
    hdu 2899
    hdu 1312
    hdu 1258
    hdu 3276
    hdu 3274
  • 原文地址:https://www.cnblogs.com/pinpin/p/10346036.html
Copyright © 2011-2022 走看看