pythonis 与 == 区分 :
is用于判别两个变量援用工具能否为同一个, == 用于判别援用变量的值能否相等。
a is b 相称于 id(a)==id(b),id() 可以猎取工具的内存地点。(保举学习:Python视频教程)
假如 a=10;b=a; 则此时 a 以及 b 的内存地点同样的;
但当 a=[1,2,3]; 另 b=a[:] 时,尽管 a 以及 b 的值同样,但内存地点纷歧样。
假如此时界说 a=十、b=10, 而后再比照 a is b 会发现前往的后果是 True,这是由于正在 Python 中会完成创立一个小型的整形池,范畴为 [-5,256],为这些整形开拓好内存空间,今世码中界说该范畴内的整形时,没有会再从新调配内存地点。
而我正在 Pycharm 中进行测试:
#coding=utf-8 a=100000000000; b=100000000000; print a is b
后果:
True
起初查了材料才发现是:Python出于对功能的思考,凡是是不成变工具,正在同一个代码块中的工具,只有是值相反的工具,就没有会反复创立,而是间接援用曾经存正在的工具。
更多Python相干技巧文章,请拜访Python教程栏目进行学习!
以上就是python is以及==的区分的具体内容,更多请存眷资源魔其它相干文章!
标签: Python python教程 python编程 python使用问题
版权声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。
抱歉,评论功能暂时关闭!