按 Python 中的值对 python dict 进行排序 3.7
Sorting python dict by value in Python 3.7
我有一个类似下面的字典:
d = {"string0": 0, "string2": 2, "string1": 1}
我想按 int 值对其进行排序,以便它像:
d = {"string0": 0, "string1": 1, "string2": 2}
我知道我可以在内置函数 sorted()
的帮助下对列表进行排序,并使用 lambda 函数指定 key
参数,如下所示:
sorted_d = {k: v for k, v in sorted(d.items(), key=lambda i: i[1])}
但由于某种原因它似乎不起作用,字典仍然是原来的。
您的密钥 1[1]
无效 Python。你想要i[1]
。这个改变就可以了。
你可以关注这个答案
Click here
或者使用这个:
d = {"string0": 0, "string2": 2, "string1": 1}
sorted_x = sorted(d.items(), key=lambda kv: kv[1])
print(sorted_x)
我有一个类似下面的字典:
d = {"string0": 0, "string2": 2, "string1": 1}
我想按 int 值对其进行排序,以便它像:
d = {"string0": 0, "string1": 1, "string2": 2}
我知道我可以在内置函数 sorted()
的帮助下对列表进行排序,并使用 lambda 函数指定 key
参数,如下所示:
sorted_d = {k: v for k, v in sorted(d.items(), key=lambda i: i[1])}
但由于某种原因它似乎不起作用,字典仍然是原来的。
您的密钥 1[1]
无效 Python。你想要i[1]
。这个改变就可以了。
你可以关注这个答案
Click here
或者使用这个:
d = {"string0": 0, "string2": 2, "string1": 1}
sorted_x = sorted(d.items(), key=lambda kv: kv[1])
print(sorted_x)