>>> flob = {u'': [u''], u'DL': [u'DL'], u'Gender': [u'Both Sexes'], u'SQ': [u'SQ'], u'BP': [u'BP'], u'Location': [u'World Wide']}
>>> flob is dict
False
>>> flob == dict
False
>>> type(flob)
<type 'dict'>
我问它是否类型dict,它说错误。我问它是什么类型,它说dict。为什么呢?
答案 0 :(得分:7)
因为您正在比较对象本身,dict
的实例与dict
......这两件事是不同的实体。 is
用于确定两个变量名是否指向同一个对象。
type({}) is dict # returns true.
a = {}
b = a
a is b # returns true
答案 1 :(得分:3)
is
或身份比较。请参阅下面的提示 - id
返回对象的内存位置,id(a) == id(b)
类似于a is b
。对于类型检查(应谨慎使用),您需要isinstance
。
>>> flob = {u'': [u''], u'DL': [u'DL'], u'Gender': [u'Both Sexes'], u'SQ': [u'SQ'], u'BP': [u'BP'], u'Location': [u'World Wide']}
>>> id(flob)
17665920
>>> id(dict)
8678496
>>> id(flob) == id(dict)
False
>>> type(flob) == dict
True
>>> isinstance(flob, dict)
True
答案 2 :(得分:2)
这种橘子一般与橙子的概念相同吗?
这个橘子的价值是否与橘子的概念相等?
这种橙子是什么东西?