我碰到一個比較奇怪的Python中走到今天。這是我發現的:
'101' > -1
True
'101' < -1
False
'101' > 100
True
'101' < 100
False
'101' < 1
False
我不確定這些表達式正在測試什麼。任何提示都會有所幫助。
我碰到一個比較奇怪的Python中走到今天。這是我發現的:
'101' > -1
True
'101' < -1
False
'101' > 100
True
'101' < 100
False
'101' < 1
False
我不確定這些表達式正在測試什麼。任何提示都會有所幫助。
當您訂購數字和非數字類型時,數字類型首先出現。
運營商<,>,==,> =,< =和=比較兩個對象的值!這些對象不必具有相同的類型。如果兩者都是數字,則它們被轉換爲通用類型。否則,不同類型的對象總是比較不平等,並且被一致但任意地排序。
你可能想指出,這在python 3.x中消失了(支持更爲邏輯的'TypeError') – mgilson
當您將數字和非數字類型進行比較時,無論任何一個變量的值是什麼,數字類型都必須先出現以使表達式成爲真。
當您比較兩個不兼容的python類型時,它會按字母順序比較類型的名稱。有關更多信息,請參閱this question。
我不知道爲什麼這個表達式需要被測試。可能它們可能用於檢查類型,例如
如果FOO <欄是真實的,杆已知不是數字變量然後FOO必須是數字值,並且可以在計算中等等
DUP用於http://stackoverflow.com/questions/ 3270680/how-does-python-compare-string-and-int? – zenpoy
+1重複 - 我在搜索時沒有找到。 –