【发布时间】:2016-09-21 00:05:11
【问题描述】:
我需要从字典中提取非常具体的键值对。键是整数,并且值对于一定数量的键重复,这会有所不同。 我必须提取重复值的最后一个键值对。所以,在这种情况下,我需要提取键值对:
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 ']
}
背后的想法:这本词典包含有关在给定时间播放的音符的信息。我需要使这个过程自动化,以便尝试绘制非常简化的乐谱。
【问题讨论】:
-
欢迎来到 StackOverflow。请阅读并遵循帮助文档中的发布指南。 Minimal, complete, verifiable example 适用于此。在您发布代码并准确描述问题之前,我们无法有效地帮助您。 StackOverflow 不是编码或教程服务。
-
也就是说,你的问题是什么?看来您需要在音符更改之前获取每个组的最后一个值。为此使用字典很奇怪。时间序列通常是一个序列(值的有序序列、元组或列表)。
-
你是对的:我需要在注释更改之前获取每个组的最后一个值。所以,你是说我应该把我的字典变成一个列表来解决这个问题?
-
prune 是正确的,dict 是一个糟糕的结构,dicts 是无序的,因此没有基于密钥编号的先或后的概念
标签: python dictionary iterator keyvaluepair