我想计算一定数量的日期和今天之间的日期,但是我在字典中输入了很多日期,似乎无法遍历它们。
from datetime import date
dates= {"A": (2019, 7, 25), "B": (2017, 1, 19), "C": (2016, 11, 17), "D": (2017, 10, 17)}
current = date(2019, 7, 24)
for key, value in champs.items():
d1 = date(champs[value])
days = d1 - current
print(days)
我尝试了这个,但是它给了我这个错误:
KeyError: (2019, 7, 24)
我想知道字典中每个日期和当前日期之间有多少天。有办法吗?
答案 0 :(得分:0)
只需使用d1 = date(*value)
。因为您使用items()
方法,所以您已经从dict获得了(key and)值。
更好的解决方案是不使用dict(因为您对键不做任何事情),或者如下所述直接对值进行迭代。
from datetime import date
dates = {
"A": (2019, 7, 25),
"B": (2017, 1, 19),
"C": (2016, 11, 17),
"D": (2017, 10, 17),
}
current = date(2019, 7, 24)
for date_tuple in dates.values():
d1 = date(*date_tuple)
delta = current - d1
print(delta.days)
输出
-1
916
979
645