Python学习笔记——is与==

本文介绍了Python中is和==的区别,通过实例展示了它们在数字、字符串和元组等不同数据类型上的行为。对于数字,当值在一定范围内时,is用于检查是否为同一内存地址;对于字符串,is在特定情况下返回True,如全由字母和数字组成;元组的is判断则与元素数量和类型有关。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

这篇内容比较简单。

例:

这里写图片描述

通俗解释:

a是个苹果手机,b是个苹果手机
问题一(==):
a和b都是苹果手机么?

问题二(is):
a手机就是b手机么?

虽然a和b中指向的地址存储的数据相同,但是他们指向地址是不同的。


例外:

这里写图片描述

1、单纯针对数字

然后我自己写了个小循环,找出了a is b的区间

先看负数

这里写图片描述

再看正数

这里写图片描述

由上可知
设 -6 < x < 257
假如执行 a = x
在给变量赋数字类型值的时候,py君先在存储空间找有没有已经存在的x,如果有就直接把x的地址放在a中,如果没有就新开辟空间把x放进去,然后将其地址放在a中。

2、单纯针对字符串

在我的尝试中
(1)大小写字母加数字,一般is判断都是true。
注:如果要用for循环找的话,从i = 2 开始就是false了。

这里写图片描述

(2)大小写字母或数字加上任意特殊字符,is判断都是false。

3、其他类型

我做了一个简单的测试,元组可能特殊一些具体如下图。

这里写图片描述

元组有一个元素的时候可能会特殊一些,这又回到了之前写数字和字符的情况。

以上。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值