2013-07-22 45 views

回答

10

您的問題標題與您的代碼不符。您沒有比較"20130708""",您正在比較20130708"" - 即一個整數,並帶有一個空字符串。

這是Python 2的一個特點,即整數始終比字符串少。在Python 3中,這是固定的,並且該代碼提高了TypeError: unorderable types: int() < str()

+0

哇,是的,這是一個愚蠢的問題。我應該在星期天開始睡覺,星期二早上醒來。 –

1

你缺少引號的位置:

>>> "20130708" < "" 
False 

你正在做的是比較ints什麼str,這是rich comparisons。所以任何int比任何str「小」。

+0

「豐富的比較」並不是指比較不同類型的對象;這意味着使用了幾種新的比較方法('__lt __()','__ge __()'等)而不是舊的單一方法'__cmp __()'。 – kindall

相關問題