values = {
4 : review,
5 : enter,
2 : help,
9 : hello,
1 : happy,
}
我希望能够排序字典键,以便
我得到了
values = {
1 : happy,
2 : help,
4 : review,
5 : enter,
9 : hello,
}
然后我想按照他们的顺序将第二部分(快乐,帮助,评论,输入,你好)提取到一个列表中!
我试过了
test = sorted(values)
print(test)
导致:
[1,2,4,5,9]这是正确的顺序,但如何检索字符串值?
答案 0 :(得分:0)
你不能“排序字典”,因为字典是无序的,但是你可以得到字典中的值列表,按照各自的键排序(这是我认为你得到的“我怎么做检索字符串值?“) - 就像你已经得到一个按自己排序的键列表一样。
有两种想法,更明显:
v = [d[k] for k in sorted(d)]
print(v)
效率更高(两者中):
v = [v for (k,v) in sorted(d.items())]
print(v)
两者都会产生
列表['happy', 'help', 'review', 'enter', 'hello']
答案 1 :(得分:0)
values = { 4: "review",
5 : "enter",
2 : "help",
9 : "hello",
1 : "happy",}
print([values[key] for key in sorted(values.keys())])
输出:
['happy', 'help', 'review', 'enter', 'hello']
答案 2 :(得分:-2)
test = sorted(values.items())
print(test)
data = [val for (key,val) in sorted(values.items())]
print(data)