python - 找到最近的时间

标签 python arrays time

我有一个包含这些项目的列表:

hours = ['19:30', '20:10', '20:30', '21:00', '22:00']

假设现在是 20:18,如何从列表中获取“20:10”项?我想用它在电视指南中查找当前正在播放的节目。

最佳答案

>>> import datetime
>>> hours = ['19:30', '20:10', '20:30', '21:00', '22:00']
>>> now = datetime.datetime.strptime("20:18", "%H:%M")
>>> min(hours, key=lambda t: abs(now - datetime.datetime.strptime(t, "%H:%M")))
'20:10'

关于python - 找到最近的时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4118526/

相关文章:

python - 如何按天将分组数据帧中的值映射到非分组数据帧

python - Pandas:从头开始创建日期时间索引

python - 将 numpy 数组传递给 C++ 函数并返回 numpy 数组作为输出的最有效方法是什么?

python - 在python中创建一个计时器

perl - 如何使用反引号捕获 time(1) 的运行时间输出?

python - 如何扩展 Python 识别的时区列表?

python - 如何在python中修剪字符串的n个字符?

python - 在 python 中用坐标数组填充矩阵

javascript - 如何直接追加Json对象?

python - 从不同长度的字符串值中提取某些整数,其中包含不需要的整数。图案或位置