码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • python中is和==的区别,地址和重新复制后,地址变化


    简单总结

    现象描述:
    '''
    一、“编辑器“中和把赋值语句放在”同一行的cmd环境“中,相同值的不同变量会指向同一个地址
    二、交互式/cmd环境中,若赋值相同值的变量在不同行输入,那么变量也会指向不同地址
    三、程序编辑器的程序运行就相当于在交互式环境中的一行进行了编译处理。
    '''
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    is 和 ==区别

    本质区别:
    is:判断的是对象的地址是否一致
    ==:判断的是内容逻辑是否相等,例如a='ajlajgl',b='ajlajgl',a == b 则是true
    
    • 1
    • 2
    • 3

    需要注意的现象

    一、运行软件或文本编辑器中的is和交互式环境运行结果可能不同

    同样的几行代码:

    a = 1000
    b = 1000
    print(a is b)
    
    • 1
    • 2
    • 3

    1、在sublime中的运行结果

    在这里插入图片描述

    2、 在cmd的交互式环境中:

    在这里插入图片描述

    3、在cmd环境中的另一种输入方式显示不同:

    在这里插入图片描述
    从结果中分析:对同一个值(不在[-5,256]之间)赋值到不同变量,若是同时编译(不是交互式的每行都编译),则地址相同;若分行编译(cmd交互式编译),则地址不同

    二、可能和值占用内存的大小有关

    变量值在[-5,256]直接就能保证同样的值在不同行编译依然会是相同地址

    参考:https://blog.csdn.net/qq_26442553/article/details/82195061
    在这里插入图片描述
    对于这种情况,可理解为,编译器保存的小值的地址;若下次还是这个值,则直接指向这个地址

    变量若是相同字符串,一直指向同一个地址

    在这里插入图片描述

    但变量是列表时,不管是不是交换环境都指向不同地址

    相同变量名的多次赋值,在交互式多行编译时,即使值相同,地址也会改变,但若写在一行,即使在交互式编译结果也一样

    在这里插入图片描述
    在这里插入图片描述

  • 相关阅读:
    机器学习【聚类算法2】
    探秘C语言数组:解锁高效数据管理与多维空间编程技巧"
    音视频开发常用名词解释
    [sd_scripts]之config
    Java面试笔试题大汇总(最全+详细答案)
    基于ATMega328微控制器的APRS Kiss TNC: 从原理到C语言实现的完整指南
    AR智能眼镜主板硬件设计_AR眼镜光学方案
    Solidity - 合约结构 - 错误(error)- ^0.8.4版本新增
    子树的大小
    macOS Ventura13.0.1解决office缺少“宋体”等问题。安装微软雅黑、宋体等字体。
  • 原文地址:https://blog.csdn.net/weixin_43794311/article/details/127877328
  • 最新文章
  • 【FHE】我们如何实现同态加密推理(八):SiLU 的密文化——两条路径,和一个 8 字节的开关
    SQLcl 中 c/old/new 替换变量为何失效?先定位再替换
    不让模型写作文,直接从它脑子里读答案:Jev 决策在 .NET 的两条路线
    Halo插件:支持GitHub的图床附件策略
    电视投屏界的“一股清流”!SimpleTVCast 6.0.0-beta 抢先体验:无需TV端App,界面大换血!✨
    华三VXLAN集中式网关实战指南:Spine多活网关 + 双活接入(M-LAG)
    软件更好写之后口碑会更重要
    大 O、大 Omega、大 Theta 的区别,O(n) 复杂度是什么意思
    Java标签跳转:一个鲜为人知但却很实用的小技巧
    多智能体系统论文速读
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
小工具 小游戏
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1

京公网安备 11010502049817号