==和is
== / != 比较的是对象的值是否相等
举个例子:
a=[1,2,3] b=[1,2,3] print(a,b) print(a==b)
得出的结论是:
[1, 2, 3] [1, 2, 3]
True
a 和 b 的值相等,使用 ==会返回 True
is / is not 比较的是对象的 id 是否相等(比较两个对象是否是同一个对象)
举个例子:
a=[1,2,3] b=[1,2,3] print(a,b) print(aisb) print(id(a),id(b))
得出的结论是:
[1, 2, 3] [1, 2, 3]
False
4546438400 4547032896
a 和 b 不是同一个对象,内存地址不同,使用 is 会返回False
a=[1,2,3] b=[1,2,3] print(a,b) a=bprint(aisb) print(id(a),id(b))
得到的结论是:
[1, 2, 3] [1, 2, 3]
True
4560648000 4560648000
代码中写入 a = b 则 print(a is b)
输出就为 True