我在python中有一个字典,日期元组作为键,数据元组作为值。
一个例子可能是:
(1900, 1): (2.0, 3.0, 4.0)
其中1900年是1900年,1月是第一个月,1月。
关键元组如下所示:(1900,2),(1900,3)等等。
如何迭代这样的字典?特别是每年的第一个月,因此键集看起来像(1900,1)...(1910,1),元组中的第一项递增,但第二项保持不变。
感谢您给我的任何帮助,因为我对python相对较新。
答案 0 :(得分:3)
for key in sorted(my_dict, key=operator.itemgetter(1,0)):
print(my_dict[key])
答案 1 :(得分:0)
for key, value in myDict.items():
if(key[1] == 1):
for value in myDict[key]:
# gave you the year too for handy access
iterationLogic(key[0], value)
啊,没注意到排序的密钥访问。另一篇文章给出了对字典进行排序的逻辑
答案 2 :(得分:0)
我最初的反应是更好的数据结构可能是嵌套的dict,其中第一个键是年份,第二个键是月份:
#data looks like this:
d = {1900: {1:(the data), 2:(the data)...}, 1901: {1:(the data)...}}
for year in data:
print year[1]