python数据类型比较

时间:2012-02-16 09:58:02

标签: python

  

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

任何人都可以解释下面的内容。与1相比,'a'是一个 内部是一个和1个ASCII val比较或它是如何 即,有一些转换发生在'a'然后进行比较或者这是怎么回事。请解释

>>> 'a' > 1
True
>>> 'a' > 'b'
False

2 个答案:

答案 0 :(得分:1)

以字面方式比较不同类型,并且“int”是< “字符串”

在python 3.x中,它会改变它,因此不同的类型不可比较。

Bool< INT:

In [15]: True > 5
Out[15]: False

列表> INT:

In [14]: [1, 2] > 5
Out[14]: True

元组>列表:

In [16]: (1, 2) > [1, 2]
Out[16]: True

以你的例子为例: Str> INT:

In [17]: '1' > 5
Out[17]: True

依此类推。

答案 1 :(得分:0)

来自手册:

  

CPython实现细节:除了以外的不同类型的对象   数字按其类型名称排序;相同类型的对象   不支持正确比较的,按其地址排序。

所以“str”大于“int”