繁体   English   中英

最快获取Python数据结构

[英]Fastest Get Python Data Structures

我正在开发AI以执行MDP,正在获取状态(在这种情况下只是整数)并为其分配值,我将做很多事情。 因此,我正在寻找一种可以容纳(无需删除)该信息并具有非常快速的获取/更新功能的数据结构。 有比普通字典更快的东西吗? 我正在寻找真的是本地python的任何东西,开源的,我只需要快速获取。

使用Python字典是必经之路。

您是说所有键都是整数? 在这种情况下,使用列表并将列表索引作为键值可能会更快。 但是,您必须确保不要删除或添加列表项。 只需从您需要的数量开始,将它们全部设置为None ,如图所示:

mylist = [None for i in xrange(totalitems)]

然后,当您需要“添加”项目时,只需设置相应的值即可。

请注意,从实际效率上来讲,这实际上可能不会给您带来太多好处,并且比仅仅使用字典可能更令人困惑。

对于10,000个项目,事实证明(在我的机器上,使用特定的测试用例)访问每个项目并将其分配给一个变量大约需要334.8秒(带列表)和565秒(带字典)。

如果要快速原型,请使用python。 不用担心速度。

如果您想编写快速的科学代码(并且您不能建立在快速的本机库上,例如用于线性代数的LAPACK),请用C,C ++编写(也许只能从Python调用)。 如果使用快速代替超快就足够了,那么您也可以使用Java或Scala。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM