获取最接近给定日期的日期列表的索引

ge0*_*rge 1 python date

我有以下内容date

date=np.datetime64 (2019-12-15)
Run Code Online (Sandbox Code Playgroud)

然后我有一个 np.datetime64 日期列表:

['2018-01-01','2019-01-01','2019-04-12','2019-12-01']
Run Code Online (Sandbox Code Playgroud)

我想indexlist最接近我的日期获得。

所需的输出是3日期列表中最接近我的日期的位置。

鉴于我不知道如何测试我的问题,我无法提供示例。

我只能想到一个assert.AlmostEqual,但我不确定如何将其反映在一个例子中。

mic*_*234 5

将列表表示为 numpy 数组,然后使用以下命令找到最小差异的索引np.argmin

import numpy as np

date = np.datetime64('2019-12-15')
array = np.array(['2018-01-01','2019-01-01','2019-04-12','2019-12-01'],
                 dtype=np.datetime64)

result = np.argmin(np.abs(array - date))
Run Code Online (Sandbox Code Playgroud)