Skip to main content
 首页 » 编程设计

python之为什么 20130708 ""在 Python 中返回 true

2025年05月04日14Free-Thinker

>>> 20130708 < '' 
True 
>>> 20130708 > '' 
False 

我不确定对此的解释是什么。 The wikipedia article on lexicographical ordering说是

u < v if u is a prefix of v

因为“”是“20130708”的前缀,所以我认为“20130708”<“”是假的。

请您参考如下方法:

您的问题标题与您的代码不匹配。你不是在比较 "20130708"与 "" ,你正在比较 20130708与 "" - 即一个整数,带有一个空字符串。

整数总是小于字符串,这是 Python 2 的一个特点。在 Python 3 中,这是固定的,并且该代码引发 TypeError: unorderable types: int() < str() .