在日期列表中查找最近的日期django queryset python
我有一个日期列表(date\u list)返回这些日期。我现在需要找出最接近另一个日期(基准日期)的日期在日期列表中查找最近的日期django queryset python,python,django,date,datetime,django-queryset,Python,Django,Date,Datetime,Django Queryset,我有一个日期列表(date\u list)返回这些日期。我现在需要找出最接近另一个日期(基准日期)的日期 date_list = [datetime.date(2017, 6, 18), datetime.date(2018, 2, 4), datetime.date(2018, 2, 11), datetime.date(2018, 4, 23), datetime.date(2018, 6, 17)] base_date = [datetime.date(2016, 4, 7)] 我正在
date_list = [datetime.date(2017, 6, 18), datetime.date(2018, 2, 4), datetime.date(2018, 2, 11), datetime.date(2018, 4, 23), datetime.date(2018, 6, 17)]
base_date = [datetime.date(2016, 4, 7)]
我正在使用Python和Django来获取这些数据
date_list = [datetime.date(2017, 6, 18), datetime.date(2018, 2, 4), datetime.date(2018, 2, 11), datetime.date(2018, 4, 23), datetime.date(2018, 6, 17)]
base_date = [datetime.date(2016, 4, 7)]
日期列表[最近的索引]是最接近的下面的代码应该能够为您提供Python 3的预期结果
date_list = [datetime.date(2017, 6, 18), datetime.date(2018, 2, 4), datetime.date(2018, 2, 11), datetime.date(2018, 4, 23), datetime.date(2018, 6, 17)]
base_date = [datetime.date(2016, 4, 7)]
import datetime
date_list = [datetime.date(2017, 6, 18), datetime.date(2018, 2, 4), datetime.date(2018, 2, 11), datetime.date(2018, 4, 23), datetime.date(2018, 6, 17)]
base_date = [datetime.date(2016, 4, 7)]
closest_date = ''
lowest_time_delta = 99999999
for my_date in date_list:
current_time_delta = abs((my_date - base_date[0]).total_seconds())
if current_time_delta < lowest_time_delta:
closest_date = my_date
lowest_time_delta = current_time_delta
print (closest_date)
导入日期时间
date_list=[datetime.date(2017,6,18),datetime.date(2018,2,4),datetime.date(2018,2,11),datetime.date(2018,4,23),datetime.date(2018,6,17)]
基准日期=[日期时间日期(2016年4月7日)]
最近日期=“”
最低时间增量=9999999
对于日期列表中的我的日期:
当前时间增量=绝对值((我的日期-基准日期[0])。总秒数()
如果当前时间增量<最低时间增量:
最近的约会=我的约会
最低时间增量=当前时间增量
打印(最近日期)