gpt4 book ai didi

python - 在字典中搜索隐藏的键值对

转载 作者:太空宇宙 更新时间:2023-11-04 03:12:56 25 4
gpt4 key购买 nike

我需要从字典中提取非常具体的键值对。键是整数,值对于一定数量的键重复,这会有所不同。我必须提取重复值的最后一个键值对。因此,在这种情况下,我需要提取键值对:

42: ['e ']
85: ['dis ']
88: ['d ']
95: ['e ']

某个值出现的次数是随机的。稍后可能会再次出现一个值,如本例中的值 ['e '],因此我需要将其提取两次。

这是我在这里使用的示例,用于处理我正在处理的词典类型:

notes_dict = {
0: ['e '],
1: ['e '],
2: ['e '],
3: ['e '],
#(...)
40: ['e '],
41: ['e '],
42: ['e '],
43: ['dis '],
44: ['dis '],
45: ['dis '],
#(...)
83: ['dis '],
84: ['dis '],
85: ['dis '],
86: ['d '],
87: ['d '],
88: ['d '],
89: ['e '],
90: ['e '],
91: ['e '],
92: ['e '],
93: ['e '],
94: ['e '],
95: ['e ']
}

这背后的想法:这本字典包含有关在给定时间正在播放哪个音符的信息。我需要使此过程自动进行,以便尝试绘制非常简化的乐谱。

最佳答案

这可能对你有用:

from itertools import groupby
notes_dict = {
0: ['e '],
1: ['e '],
2: ['e '],
3: ['e '],
40: ['e '],
41: ['e '],
42: ['e '],
43: ['dis '],
44: ['dis '],
45: ['dis '],
83: ['dis '],
84: ['dis '],
85: ['dis '],
86: ['d '],
87: ['d '],
88: ['d '],
89: ['e '],
90: ['e '],
91: ['e '],
92: ['e '],
93: ['e '],
94: ['e '],
95: ['e ']
}

for k, g in groupby(sorted(notes_dict),
key=notes_dict.get):
print '{}: {}'.format(list(g)[-1], k)

关于python - 在字典中搜索隐藏的键值对,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37402334/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com