0
dict1 = {datetime.timedelta(3, 21388, 702926): 2, datetime.timedelta(10, 21388, 702926): 1, datetime.timedelta(3, 65011, 297074): 2, datetime.timedelta(14, 65011, 297074): 1, datetime.timedelta(17, 65011, 297074): 1, datetime.timedelta(0, 65011, 297074): 1, datetime.timedelta(7, 65011, 297074): 1, datetime.timedelta(10, 65011, 297074): 1, datetime.timedelta(0, 21388, 702926): 1}
我正在嘗試刪除timedeltas,其值之和等於6。python刪除其值總計達到總數的鍵
以下是我正在試圖解決這個問題:
x = 0
for key in dict1:
if key in sorted(dict1)[-1] and x < 6:
x = x+dict1[key]
del dict1[key]
我的想法進行排序(字典)返回,並在最後從最大的timedeltas的列表。我可以匹配列表中的最大timedelta每個鍵,總結其值設置爲X &刪除鍵,直到x達到6但這返回:
TypeError: argument of type 'datetime.timedelta' is not iterable
而煩惱了。
不要使用'dict'的名字,你掩蓋了內置類型。 –
看看這個問題,看看它是否可以幫助你 - http://stackoverflow.com/questions/1060279/iterating-through-a-range-of-dates-in-python – Dayan
如果最大的鍵的總和是*不*完全6? –