is和==的关系

Python中is和==的关系

is判断两个变量是不是指的是同一个内存地址,也就是通过id()函数判断

==判断两个变量的值是不是相同

python 复制代码
a = [1, 2, 3, 4]
b = [1, 2, 3, 4]
print(id(a))		# 2298268712768
print(id(b))		# 2298269716992
print(a is b)		# False
print(a == b)		# True

这里有一种特殊情况:

python 复制代码
a = 1
b = 1
print(id(a))	# 140705217569576
print(id(b))	# 140705217569576
print(a is b)	# True
print(a == b)	# True

原理是:当我们已有个变量是小整数或小段的字符串,再次建立相同的小整数或小字符串时,python不会重新开辟一个内存空间,而是用指针将这个变量指向我们已经创建的内存空间,这个属于python内部的优化机制

相关推荐
m0_4939345313 分钟前
C#怎么实现EF Core全局查询过滤 C#如何用HasQueryFilter配置全局过滤条件自动排除已删除数据【数据库】
jvm·数据库·python
Hello--_--World13 分钟前
ES16:Set 集合方法增强、Promise.try、迭代器助手、JSON 模块导入 相关知识
开发语言·javascript·json
AI_大白15 分钟前
Python + Redis 实时行情共享:WebSocket 数据流的订阅管理与断线恢复实践
python·架构
财经资讯数据_灵砚智能17 分钟前
基于全球经济类多源新闻的NLP情感分析与数据可视化(夜间-次晨)2026年4月19日
人工智能·python·信息可视化·语言模型·自然语言处理·知识图谱·ai编程
.柒宇.18 分钟前
Python 运维实战:psutil 监控系统资源 + paramiko 远程管理服务器
运维·服务器·python
几度热忱18 分钟前
【uv包管理工具】常用命令记录
python·uv
weixin_5689960618 分钟前
处理大体积DBF文件导入卡顿怎么办_性能优化与分批操作
jvm·数据库·python
xcbrand21 分钟前
工业制造品牌全案公司哪家专业
大数据·人工智能·python·制造
m0_6403093025 分钟前
如何处理SQL查询中的逻辑重叠:AND OR嵌套优先级
jvm·数据库·python
qq_4327036625 分钟前
如何快速定位SQL表中的特定行:ROWID与唯一键的应用
jvm·数据库·python