attendance = [ datetime.datetime(2018, 4, 1, 7, 01), datetime.datetime(2018, 4, 2, 7, 01), datetime.datetime(2018, 4, 3, 7, 01), datetime.datetime(2018, 4, 4, 7, 01), datetime.datetime(2018, 4, 5, 7, 01), datetime.datetime(2018, 4, 5, 7, 21), datetime.datetime(2018, 4, 6, 7, 01), datetime.datetime(2018, 4, 7, 7, 01), ]
并且我想要显示它如果天重复或偶然有两次它将忽略另一个并且只显示一个有小时和一个分钟低于另一个。
在这种情况下,我有2个数据在
上重复datetime.datetime(2018, 4, 5, 7, 01), datetime.datetime(2018, 4, 5, 7, 21)
我想要它唯一的节目
datetime.datetime(2018, 4, 5, 7, 01)
因为小时/分钟低于其他
我喜欢这个
j = datetime.datetime(year,month,day,hour,minute) for i in attendance: if i == j: do nothing/skip else print the data j = j
但它打印所有数据,而不是我想要的。
答案 0 :(得分:0)
所以这里的问题是这两个数据不等同:
datetime.datetime(2018, 4, 5, 7, 01),
datetime.datetime(2018, 4, 5, 7, 21)
因为它们在分钟值上有所不同。所以==会说他们是不同的。
j = datetime.datetime(year,month,day,hour,minute)
for i in attendance:
if i.year == j.year and i.month == j.month and i.day == j.day:
pick the earlier (pseudocode)
else
print the data
j = i
答案 1 :(得分:0)
日期时间提供日期获取功能,请参阅datetime.date()。只需比较日期