元组的定义
a=(1,2,3,4)b=1,2,3,4
a is b
False
type(b)
class tuple
a和b都是元组,而且内容是一样的,为什么返回的是False ? a=(1,2,3,4)
b=1,2,3,4
print(a is b)
print(type(a) is type(b))
结果:True
True a和b虽然内容一样,你可以通过id查找他们存储的地址
但是在系统中储存的地址不一样,你可以说a和b是相等的,但不能是他们就是一个东西
这就像很多人叫张三,但你不能说那些个叫张三的人都是同一个人吧! 你是用 ==的话,是不会出错的,
但是你这里使用的是is
is必须id一致才行,也就是说他们必须存储在同一
在idle的交互模式下
a = (1, 2, 3, 4)
和
b = 1, 2, 3, 4
会分别开辟出两个内存储存数据
所以a is b会出现False
在文本模式下
a = (1, 2, 3, 4)
和
b = 1, 2, 3, 4
会公用一套内存
所以a is b 为True
逃兵 发表于 2021-4-2 14:57
你是用 ==的话,是不会出错的,
但是你这里使用的是is
好,谢谢 昨非 发表于 2021-4-2 14:49
结果:
谢谢啊 剑廿三 发表于 2021-4-2 14:54
a和b虽然内容一样,你可以通过id查找他们存储的地址
但是在系统中储存的地址不一样,你可以说a和b是相等的 ...
谢谢
页:
[1]