Ash*_*him -1 python sorting string python-3.x
我试图对实际上是整数的字符串列表进行排序,但我没有得到正确的排序值。我如何以根据字符串的整数值对其进行排序的方式对其进行排序?
a = ['10', '1', '3', '2', '5', '4']
print(sorted(a))
Run Code Online (Sandbox Code Playgroud)
输出:
['1', '10', '2', '3', '4', '5']
Run Code Online (Sandbox Code Playgroud)
想要的输出:
['1', '2', '3', '4', '5', '10']
Run Code Online (Sandbox Code Playgroud)
我们必须使用 lambda 作为键,并在排序函数发生之前将每个字符串转换为 int。
sorted(a,key=lambda i: int(i))
Output :
['1', '2', '3', '4', '5', '10']
Run Code Online (Sandbox Code Playgroud)
更短的方式 -> sorted(a,key=int)。感谢@Mark 发表评论。
| 归档时间: |
|
| 查看次数: |
418 次 |
| 最近记录: |