这个问题在这里已有答案:
我想将包含整数的列表排序为chars。例如:
l = ['1', '10', '11', '12', '16', '17', '2', '24', '26', '27', '28', '30', '32', '34', '35', '36', '43', '45', '47', '49', '50', '6', '9']
print(sorted(l))
正在回归:
['1', '10', '11', '12', '16', '17', '2', '24', '26', '27', '28', '30', '32', '34', '35', '36', '43', '45', '47', '49', '50', '6', '9']
为什么sorted()表现异常?
排序完全按照应有的方式行事。
这些是字符串,而不是整数,所以sorted
首先按第一个字符排序,然后按第二个字符排序。
如果我们想对['1', '2', '12']
进行排序,我们得到['1', '12', '2']
:
1
12
2
sorted
首先按第一列排序,然后排在第二列。