你真的知道python 的 iS 和 == 吗?
关于python的运算符 is 和 ==,你会觉得很简单嘛,is不就是判断,内存地址是否相等吗,
==不就是判断值是否相等嘛,有什么难的。对,确实简单,但看看下面的:
如果 我这样写,a = 5,b= a ,这样很容易理解阿,b指向a指向的内存地址,a is b 是True 很容易理解阿
但是,我是a = 1, b= 1,难道不应该再开一个内存嘛,应该 a is b 是F阿,既然是True,只能说明,a 和b的
内存地址是一样的了,但又看下面,怎么就不是Flase了,这就很奇怪了,我当时就在想,难道python内部已
经存在这些值的内存地址了嘛,没错,python内部有一个常见的数据的池,整数是-5到255,也就是说,a = 300,
b = 300, a is b 是F了,这样也就说的通了,关于字符串为啥一样,大家可以思考一下,内存地址是肯定一样的
应该就是python内存的机制吧
是这样的 呵呵
== 就很简单了,只要值一样就行了
永远不要高估自己
【推荐】还在用 ECharts 开发大屏?试试这款永久免费的开源 BI 工具!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步