python - 基于日期时间在 Python 中“查询”数据结构

标签 python

我需要一个可以处理以下内容的数据结构:

date_from (datetime)
date_to (datetime)
value (float)

...我需要能够根据日期时间“查询”此数据结构(例如,在伪代码中: SELECT * FROM data_structure WHERE a_datetime >= date_from AND a_datetime <= date_to; )。

如果此“查询”没有结果,我需要能够将新值插入到数据结构中。

执行此操作的最佳方法是什么? (我现在有点卡住了)

最佳答案

看看这个 SortedCollection Recipe 。它使用 bisect module并让您创建一个带键的集合。例如:

>>> from SortedCollection import SortedCollection
>>> from operator import itemgetter
>>> s = SortedCollection(key=itemgetter(0))
>>> s.insert((1,2,'a'))
>>> s.insert((10,20,'b'))
>>> s.insert((20,30,'c'))
>>> s.find_le(10)
(10, 20, 'b')

可以帮助您创建时间段信息的缓存,二等分方法应该可以让您有效地访问日期键控信息。

关于python - 基于日期时间在 Python 中“查询”数据结构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11224117/

相关文章:

Python 2.7 从另一个 python 文件加载和编辑列表

python - 在 python3 asyncio 中使用串口

python - 如何在matplotlib basemap 工具包中使你的经络西正?

python - CSV 中每个字符之间的逗号

python - python json中变量名作为类名

python - 将具有 NaN 的多列 Pandas 数据框转换为嵌套字典

python - 覆盖方法不包含 self ?

python / Pandas : How many levels in a dataframe index?

python - 在 Nose 下测试 Python 代码时,我应该如何验证日志消息?

python - 使用 python 将句子列表拆分为单词列表