-1 python sorting dictionary list
我的代码是:
a = {"key1": 5 , "key2": "8 hours ago", "key3": 2}
b = {"key1": 7 , "key2": "42 hours ago", "key3": 9}
c = {"key1": 6 , "key2": "1 hour ago", "key3": 1}
undecorated = [a, b, c]
undecorated.sort(key=operator.itemgetter('key2'))
Run Code Online (Sandbox Code Playgroud)
结果是:
[
{"key1": 6 , "key2": "1 hour ago", "key3": 1}
{"key1": 7 , "key2": "42 hours ago", "key3": 9}
{"key1": 5 , "key2": "8 hours ago", "key3": 2}
]
Run Code Online (Sandbox Code Playgroud)
但结果需要:
[
{"key1": 6 , "key2": "1 hour ago", "key3": 1}
{"key1": 5 , "key2": "8 hours ago", "key3": 2}
{"key1": 7 , "key2": "42 hours ago", "key3": 9}
]
Run Code Online (Sandbox Code Playgroud)
如果值key2与此处显示的一样正常,您可以执行以下操作:
undecorated.sort(key=lambda d: int(d['key2'].split()[0]))
Run Code Online (Sandbox Code Playgroud)