elw*_*lwc 20 python sorting list python-2.7
我有一份清单
mylist = [['123', 'BOOL', '234'], ['345', 'INT', '456'], ['567', 'DINT', '678']]
我想按顺序排序1. DINT2. INT3.BOOL
结果:
[['567', 'DINT', '678'], ['345', 'INT', '456'], ['123', 'BOOL', '234']]
我在stackoverflow中看到过其他类似的问题,但没有类似或容易适用于我.
Sea*_*ira 44
SORT_ORDER = {"DINT": 0, "INT": 1, "BOOL": 2}
mylist.sort(key=lambda val: SORT_ORDER[val[1]])
Run Code Online (Sandbox Code Playgroud)
我们在这里所做的就是提供一个新的元素来排序,为列表中的每个元素而不是整个列表返回一个整数.我们可以使用内联三元表达式,但这会有点笨拙.
| 归档时间: |
|
| 查看次数: |
10275 次 |
| 最近记录: |