大佬教程收集整理的这篇文章主要介绍了Python-“=”和“is”有区别吗?,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
如果两个变量指向同一个对象,则返回True
;如果变量引用的对象相等,则返回=
。
>>> a = [1, 2, 3]
>>> b = a
>>> b is a
True
>>> b == a
True
# Make a new copy of List `a` via the slice operator,
# and assign it to variable `b`
>>> b = a[:]
>>> b is a
false
>>> b == a
True
在你的例子中,第二个测试只起作用,因为Python缓存小整数对象,这是一个实现细节。对于较大的整数,这不起作用:
>>> 1000 is 10**3
false
>>> 1000 == 10**3
True
字符串文本也是如此:
>>> "a" is "a"
True
>>> "aa" is "a" * 2
True
>>> x = "a"
>>> "aa" is x * 2
false
>>> "aa" is intern(x*2)
True
以上是大佬教程为你收集整理的Python-“=”和“is”有区别吗?全部内容,希望文章能够帮你解决Python-“=”和“is”有区别吗?所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。