高防服务器

python中is和==的区别有哪些


python中is和==的区别有哪些

发布时间:2021-12-03 15:18:29 来源:高防服务器网 阅读:97 作者:小新 栏目:大数据

这篇文章主要为大家展示了“python中is和==的区别有哪些”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“python中is和==的区别有哪些”这篇文章吧。

==———>比较的两边的值。

is———–>比较的内存地址,用id()查看。

小数据池

  • 数字小数据池范围-5~256(此范围内不同变量赋值同一数值,它们的内存地址相等);

  • 字符串中如果有特殊字符,则它们的内存地址不一样;

  • 字符串中单个字符*20以内它们的内存地址是一样的,单个*21以上内存地址不一样。

注明以上只能在终端测试,不能在pycharm中运行,因为pycharm默认都是True,而在终端超出以上条件为False。

     
练习      
     
n = 10
n1= 10
print(n == n1)
#id()查看内存地址
#所有数据类型都有内存地址
# is 查看内存地址
print(id(n))
print(n is n1) #True
#字符串
a = 'alex'
b = 'alex'
print(a is b)  #True
#列表
l1 = [1,2,3]
l2 = [1,2,3]
print(l1 is l2) #False
#元组
tu = (1,2,3)
tu1 = (1,2,3)
print(tu is tu1) #False
#字典
dic = {'name':'alex'}
dic1 = {'name':'alex'}
print(dic is dic1) #false
#元组
tu = (1,4,6)
tu1 = (1,4,6)
print(tu is tu1) # False
#小数据池 -5~256
n = -10000
n1 = -10000
print(n is n1) #False,在pycharm运行超出小数据池也是True
a = 10000
b = 10000
print(id(a),id(b))

以上是“python中is和==的区别有哪些”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注高防服务器网行业资讯频道!

[微信提示:高防服务器能助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。

[图文来源于网络,不代表本站立场,如有侵权,请联系高防服务器网删除]
[