Python中列表字典的最快替代方案



我有一个包含600多个键(字符串(的列表字典,每个键(浮点(有1440个元素的列表。从每个列表中,我得到一个最小值来与一些值进行比较。因为这是经常做的事,我想知道是否有更快、更有效的方法来做。也许是用熊猫或numpy?不幸的是,我不熟悉他们。

我用创建空字典

dict = {el:[] for el in symbols}

Symbols是一个包含610个字符串值的列表。

然后每隔60秒,我会给每个键附加一个值。元素的最大数量为1440。

dict[symbol].append(value)
dict[symbol] = dict[symbol][-1440:]

接下来我得到最小值并进行比较。

if to_be_compared_for_symbol < min(dict[symbol]):
...

这种情况反复出现。每60秒就会有新的值被输入字典,但大约每秒进行5次比较。更准确地说:我每秒大约五次得到610个不同的值,每个值都必须与相应的最小值进行比较。

能更高效、更快地完成吗?

您试图每秒提取列表的最小值5次,但每60秒就会为列表获取新值(重复您所说的内容以便在同一页面上(。

我只会在dict中为你的所有列表找到610个最小值,并将它们保存在一个简单的列表中,然后每秒与它们进行5次比较,而不是一遍又一遍地搜索分钟。然后,在你添加到你的dict列表后,找到新的最小值,存储它们并重复。

最新更新