Python 是';dict';,错误的然而给予<;类型';dict'>;? flob={u':[u'],u'DL':[u'DL'],u'SENDY':[u'PENDLEX'],u'SQ':[u'SQ'],u'BP':[u'BP'],u'Location':[u'World Wide']} >>>絮语是口述 错误的 >>>flob==dict 错误的 >>>类型(flob)

Python 是';dict';,错误的然而给予<;类型';dict'>;? flob={u':[u'],u'DL':[u'DL'],u'SENDY':[u'PENDLEX'],u'SQ':[u'SQ'],u'BP':[u'BP'],u'Location':[u'World Wide']} >>>絮语是口述 错误的 >>>flob==dict 错误的 >>>类型(flob),python,types,Python,Types,我问它,如果它的类型是dict,它会说false。我问它是什么类型,它说dict。为什么?因为你在比较对象本身,dict的实例与dict。。。这两样东西是不同的实体is用于确定两个变量名是否指向同一对象 >>> 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']} >>

我问它,如果它的类型是dict,它会说false。我问它是什么类型,它说dict。为什么?

因为你在比较对象本身,
dict
的实例与
dict
。。。这两样东西是不同的实体
is
用于确定两个变量名是否指向同一对象

>>> 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
。。。这两样东西是不同的实体
is
用于确定两个变量名是否指向同一对象

>>> 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'>

使用了或身份比较。请参见下面的提示-
id
返回对象的内存位置,
id(a)==id(b)
类似于
a是b
。对于类型检查(应谨慎使用),您需要
isinstance

 type({}) is dict  # returns true.

 a = {}
 b = a
 a is b  # returns true

使用了或身份比较。请参见下面的提示-
id
返回对象的内存位置,
id(a)==id(b)
类似于
a是b
。对于类型检查(应谨慎使用),您需要
isinstance

 type({}) is dict  # returns true.

 a = {}
 b = a
 a is b  # returns true

这个橘子和一般意义上的橘子是一样的吗

这个橙子的价值和一般意义上的橙子相等吗


这个橘子是什么东西?

这个橘子和一般意义上的橘子是一样的吗

这个橙子的价值和一般意义上的橙子相等吗



这个橙色是什么东西?

实际上,你从来不会问它的类型是否是dict。所有的操作都是将实例与类进行比较,这总是错误的。类和对象之间有区别。Dan,实际上在python中并不完全是这样
isinstance(type(dict),object)
返回True——即
type
(一个类)是一个对象。+1,用于抵消下行投票。问题是明确的,答案只能帮助原始海报。让他们来,JT@JT.:代码请使用StackOverflow的“程序”模式;你可以在代码前面加4个空格,或者在编辑问题时用
{}
按钮自动完成。实际上,你从来不会问它的类型是否是dict。所有的操作都是将实例与类进行比较,这总是错误的。类和对象之间存在差异。Dan,实际上不完全是python
isinstance(type(dict),object)
返回True——即
type
(一个类)是一个对象。+1,用于抵消下行投票。问题是明确的,答案只能帮助原始海报。让他们来,JT@JT.:代码请使用StackOverflow的“程序”模式;您可以在代码前面加4个空格,或者在编辑问题时使用
{}
按钮自动完成此操作。
istinstance
也适用于超类,这可能比
is
更适合,这取决于您尝试执行的操作。
istinstance
也适用于超类,哪一种可能比
更合适,取决于你想做什么。嗯?这个答案是什么?这是一个类比,旨在以禅宗的方式将OP的注意力吸引到逻辑错误上。或者你是在讽刺?事实上,说得好,这很有道理。Ta+.5代表禅宗,+.5代表橘子。好的,我现在明白了。说到禅,我更困惑而不是开悟…嗯?这个答案是什么?这是一个类比,旨在以禅宗的方式将OP的注意力吸引到逻辑错误上。或者你是在讽刺?事实上,说得好,这很有道理。Ta+.5代表禅宗,+.5代表橘子。好的,我现在明白了。说到禅,我更困惑,而不是开悟。。