当尝试比较字典时,python 会引发 TypeError:
{"a" : "b"} < {"a" : "b"} # TypeError
当尝试比较元组时,Python 按元素进行比较:
(1, 2) > (1, 1) # True
因此,我预计如果字典前面的元素相等,则比较包含字典的元组将导致 TypeError,因为随后将被迫比较字典,这将引发 TypeError。不是这种情况:
(3, {"a" : "b"}) < (3, {"a" : "b"}) # False, no TypeError
我已经通读了我能找到的有关 Python 排序的文档,但没有看到任何记录此行为的内容。我可以相信这种行为在未来版本中保持不变吗?