【发布时间】:2018-03-02 23:20:53
【问题描述】:
我正在使用一个字典,其中每个键都包含一个元组列表。它看起来像这样:
dict1 = {'key1': [(time1, value1), (time2, value2), (time3, value3)],
'key2': [(time4, value4), (time5, value5), (time6, value6)],
'key3': [(time7, value7), (time8, value8), (time9, value9)], ...}
希望对每个键做的是找到从 'timeX' 到 'timeY' 的 'valueX' 的最大下降。
元组是顺序,所以
time1 < time2 < time3
而且(通常)是这样的
value1 > value2 > value3
这两件事对所有的键都是正确的。
所以看第一个键,我想做的是计算
value2 - value1 and value3 - value2
并保存最大下降发生的时间。这么说吧
value2 - value1 > value3 - value2
然后我希望保存 time1 和 time2,因为最大的下降发生在这两个时间值之间。
我正在考虑使用如下的 for 循环:
for key in dict1:
for i in dict1[key]:
但我不知道该怎么做
1) 循环遍历这些值,计算当前值和过去值之间的差值,保存并比较它观察到的最大跌幅
2) 保存与“值”最大下降相对应的时间。
我希望你能在这里帮助我。非常感谢。
【问题讨论】:
标签: python list loops dictionary tuples