任何一個可以解釋below.how是的 'a' 相對於1 內部是一個和1 ASCII val爲比較或如何是 即,有一些轉換髮生與'一',然後比較或如何是這樣。請解釋
>>> 'a' > 1
True
>>> 'a' > 'b'
False
任何一個可以解釋below.how是的 'a' 相對於1 內部是一個和1 ASCII val爲比較或如何是 即,有一些轉換髮生與'一',然後比較或如何是這樣。請解釋
>>> 'a' > 1
True
>>> 'a' > 'b'
False
不同類型lexigraphically比較,並且 「INT」 是< 「串」。
在python 3.x中,它改變了這個,所以不同的類型不能比較。
布爾<詮釋:
In [15]: True > 5
Out[15]: False
名單>詮釋:
In [14]: [1, 2] > 5
Out[14]: True
元組>列表:
In [16]: (1, 2) > [1, 2]
Out[16]: True
併爲您的示例: 海峽>詮釋:
In [17]: '1' > 5
Out[17]: True
等等等等。
從手動:
CPython的實現細節:除了 號碼不同類型的目標由它們的類型名稱排序;不支持正確比較的相同類型的對象 按其地址排序。
所以 「STR」 是大於 「INT」
似乎是重複的:http://stackoverflow.com/questions/3270680/how-does-python-compare-string-and-int – WeaselFox 2012-02-16 10:04:46