zoukankan      html  css  js  c++  java
  • Python(1)—is和==区别

    1、二者区别

    • == 是比较两个对象的内容是否相等,即两个对象的“值“”是否相等,不管两者在内存中的引用地址是否一样。
    •  is 比较的是两个实例对象是不是完全相同,它们是不是同一个对象,占用的内存地址是否相同。即is比较两个条件:1.内容相同。2.内存中地址相同

    2、 python中对于None值的比较:使用is

      因为None只有一个实例。 

    >>> a =""
    >>> a is None
    False
    >>> b ="aa"
    >>> b is None
    False
    >>> b is not None
    True 

    3、根本区别

    首先要知道Python中对象包含的三个基本要素,分别是:id(身份标识)、type(数据类型)和value(值)。

    ==是python运算符中的比较操作符,用来比较判断两个对象的value(值)是否相等

    例如:

                     a = 'abc'

                      b = 'abc'

                      print a ==b    >>>>True

    is也被叫做同一性运算符,这个运算符比较判断的是对象间的唯一身份标识,也就是id是否相同。

    例如:

                       a = [1,2,3]

                       b = [1,2,3]

                       print id(a), id(b)    >>>>4389046392 , 4389177464

                       print a is b        >>>>False

    只有数值型字符串型的情况下,a is b才为True,当a和b是tuplelistdictset型时,a is b为False



    作者:非常没想法
    链接:https://www.jianshu.com/p/a41ad2ff2963
    來源:简书
    简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。

  • 相关阅读:
    MySql8安装使用中的一些注意
    如何在CentOS 8主机上安装Nginx Web服务器
    centos安装sqlserver
    VSCode快捷键
    C#中的委托
    Winform加载loading界面
    JayRock的一些用法:json and json rpc for .Net
    winform picturebox控件 定时让图片轮播
    sql server创建存储过程
    ftp上传单一文件示例
  • 原文地址:https://www.cnblogs.com/eilearn/p/9221160.html
Copyright © 2011-2022 走看看