【发布时间】:2015-06-21 11:47:13
【问题描述】:
在使用不等式运算符比较列表时难以理解 Python 行为。这是一个使用 python3 命令行解释器的 sn-p:
>>> [8] < [7]
False
>>> [8] < [9]
True
>>> [8, 6] < [9]
True
>>> [8, 6] < [9, 7]
True # So far so good
>>> [8, 6] < [9, 5]
True # Huh?
所以,很明显 Python 不仅仅是在并行索引中移动。我确实找到了一些信息,表明在这种情况下,Python 按“字典顺序”对列表进行排序,我猜这意味着按字母顺序。
所以,我认为列表可能会被排序,然后通过并行比较,但以下示例证明了这一点:
>>> [1, 2, 3] < [3, 2, 1]
True
我的猜测是内部比较会是 [1, 2, 3]
感谢任何帮助。
【问题讨论】:
-
在按字母顺序排列的列表中 '86'
标签: python inequalities