Sai*_*lli 1 python sorting list
你能帮我搞清楚吗?
q = [[12, 13, 14], [8, 9, 10,11], [2, 3, 4], [5, 6, 7]]
Run Code Online (Sandbox Code Playgroud)
假设我有一个像q这样的列表,我如何根据它进行排序
输出应该是:
q = [[8,9,10,11],[12,13,14][5,6,7],[1,2,3]]
Run Code Online (Sandbox Code Playgroud)
在lambda函数中提供您的标准key:
sorted(q, key=lambda sub: (len(sub), sum(sub)), reverse=True)
>>> [[8, 9, 10, 11], [12, 13, 14], [5, 6, 7], [2, 3, 4]]
Run Code Online (Sandbox Code Playgroud)
该lambda函数将采用每个子列表x并根据它进行排序len,如果结果len不足以做出决定,则sum其内容用于打破平局.