Python中的字符串到整数比较

时间:2012-05-05 12:13:54

标签: python

  

可能重复:
  How does Python compare string and int?

我在Python中做了一些比较。我很惊讶地发现我可以将字符串与整数进行比较。然后我做了一个id,发现实际上字符串的id大于int的id,我认为这就是我得到这个输出的原因。

In [19]: 'a' < 3
Out[19]: False

In [20]: 'a'>3
Out[20]: True

In [17]: id('a')
Out[17]: 140414909035824

In [18]: id(3)
Out[18]: 23119752

请确认我正确解释了这种行为(Python比较id级别)。

1 个答案:

答案 0 :(得分:5)

Python 2.x的跨类型比较是一次历史性事故。来自documentation

  

(...)不同类型的对象总是比较不相等,并且一致但是任意地排序

在Python 3.x中,这是固定的 - 这些比较会引发类型错误。