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

    == 比较的是两边的值

    is 比较的是两边的内存地址  通过 id()获取内存地址

    小数据池:我们使用过的值存储在小数据池中,供其他数据使用.

      小数据池仅限于 数字 和 字符串:

        数字的小数池范围  -5---256

        字符串中 1.不能有空格;

              2. 长度不能超过20个字符;

              3. 不能有特殊字符 如:@#$

    1. id() 获得内存地址

    a = 'alex'
    print(id(a))   # 36942544  内存地址

    2. == 比较两边的值

    a = 'alex'
    b = 'alex'
    print(a == b)  #True
    
    
    n = 10
    n1 = 10
    print(n == n1) #True
    
    
    li1 = [1,2,3]
    li2 = [1,2,3]
    print(li1 == li2) #True

    3. is 比较的是内存地址

      3.1 列表 字典 元组 集合

    #列表
    li =[1,2,3]
    li2 =[1,2,3]
    print(li is li2)  #False
    
    #元组
    tu =(1,2,3)
    tu1 =(1,2,3)
    print(tu is tu1)   # False
    
    #字典
    dic1 = {'name':'alex'}
    dic = {'name':'alex'}
    print(dic1 is dic)    #False
    对比一下上面的 is
    
    #列表
    li =[1,2,3]
    li2 =[1,2,3]
    print(li == li2)  #True
    
    #元组
    tu =(1,2,3)
    tu1 =(1,2,3)
    print(tu == tu1)   # True
    
    #字典
    dic1 = {'name':'alex'}
    dic = {'name':'alex'}
    print(dic1 == dic)    #True

      3.2 对于str  小数据池

        字符串中 1.不能有空格;

              2. 长度不能超过20个字符;

              3. 不能有特殊字符 如:@#$

    a = 'alex@'
    a1 = 'alex@'
    print(a is a1)    # Fales
    
    
    a = 'a'*21
    b = 'a'*21
    print(a is b)     #False
    
    
    a = "ab  "
    b = "ab  "
    print(a is b)   #False 但是在pycharm中的结果为True

      3.3 对于int  小数据池

        数字的小数池范围  -5---256

    n = -6
    n1 = -6  #超出了范围
    print(n is n1)  #False
    
    n = -5
    n1 = -5
    print(n is n1)    #True

    n = 257
    n1 = 257
    print(n is n1) #cmd中为False 在pycharm中显示为True
     

     

  • 相关阅读:
    Software Architecture软件架构(方法、模式与框架)纵横谈
    SOLID: OOP的五大原则(译)
    《第一行代码》14章cool weather酷欧天气 网络请求相关问题
    前后端数据交互利器--Protobuf
    树状数组基础
    endless 如何实现不停机重启 Go 程序?
    fasthttp:比net/http快十倍的Go框架(server 篇)
    Mysql MVCC机制
    Docker构建mysql主从
    浅析b站2021/7/13日晚服务崩溃问题
  • 原文地址:https://www.cnblogs.com/kenD/p/9407326.html
Copyright © 2011-2022 走看看