猿问

《Python核心编程》中 `type(a)== type(b)` 与 `type(a) is type(b)`的区别

type(a)== type(b)type(a) is type(b)的区别,为什么用后者不用前者呢?

慕侠2389804
浏览 562回答 5
5回答

DIEA

is check 两边的值是否为同一对象. == 实际上call了左值的__eq__(), 然后pass给右值.

红糖糍粑

== 是比大小 is 是找地址 找地址更快、高效

九州编程

type(a) == type(b) : a,b继承的类 (类也是基类的实例) 值相等 就像: c = [1,2,3] d = [1,2,3] c == d >>> True c is d >>> false type(a) == type(b): a,b继承的类 是同一个实例(内存地址相同)就像 c = 1 d = 1 c == d >>> True c is d >>> True
随时随地看视频慕课网APP

相关分类

Python
我要回答