python 引用

108 篇文章 3 订阅
本文深入探讨了Python中数据的值、数据类型和唯一标识(id)之间的关系。通过示例展示了值相等但数据类型和唯一标识可能不同的情况,如False和0,以及列表和字符串的比较。强调了is关键字用于判断是否在相同内存空间,例如在str1和str2的案例中,它们值、类型和id都相等。文章揭示了Python中数据比较和内存管理的基本原理。
摘要由CSDN通过智能技术生成

在Python中所有的数据分为三个维度: 值(判断==), 数据类型(int...float...), 唯一标识(id)

值相等的数据,唯一标识和数据类型不一定相等

bool1 = False int1 = 0

0 和False的值相等

print(bool1 == int1) # True

数据类型不等

print(type(bool1) == type(int1)) # False

唯一标识不等

id 判断数据是否是同一内存空间中的数据(同一内存空间中的数据必相等)

print(id(bool1) == id(int1)) # False

值和数据类型相等的,唯一标识不一定相等

list1 = [1, 2, 3] list2 = [1, 2, 3]

list1 和list2 值相等

print(list1 == list2) # True

list1和list2 数据类型相等

print(type(list1) == type(list2)) # True

list1 和list2 的唯一标识不等,也就是说,其所在的内存空间不一致

print(id(list1) == id(list2)) # False

唯一标识相等的, 值和数据类型必然相等

在同一内存空间中只能储存同一个值

str1 = 'abc' str2 = 'abc'

str1 和str2 的唯一标识相等

print(id(str1) == id(str2)) # True

数据类型相等

print(type(str1) == type(str2)) # True

数据值相等

print(str1 == str2) # True

怎样判断id 唯一标识是否相等呢? is关键字

使用is可以判断是否为同一个内存空间中的数据

print(list1 is list2) # False print(str1 is str2) # True

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值