python何时用list,dict,set

从读取的角度来讲:

看是用来随机读取(查询)还是连续读取。

list数组集中存放,连续读取效率高(具体还没测试,理论上应该如此)。

dict散列表,使用hash计算存放的位置,随机读取效率高。

随机读取可以看下面这篇文章:

Python 中list ,set,dict的大规模查找效率

 

从插入的角度来讲:

连续插入的话,list连续在尾部append应该比dict不断hash计算key对应的内存位置然后再插入要快一些。但应该不会快太多(具体之后再测试)。

不连续插入的话,自然是dict要快了,而且在使用上也很方便,并且索引(key)不局限于int。

 

如果使用方式是连续插入,之后经常随机读取,可以考虑先用list插入,再转为dict。反之。

posted @ 2019-09-09 16:21  汉尼拔草  阅读(337)  评论(0编辑  收藏  举报