Python字典和集合哪个速度更快?Python集合和字典哪个场景使用更好

在python程序开发过程之中我们要创建数据结构来保存数据时会考虑到两个方面,分别为时间复杂度和空间复杂度,也就是创建对象时要耗费的时间和占用的内存 。而本文要来讲解的就是python中字典和集合这两个对象的速度比较以及它们的共同点,往下看看吧 。

Python字典和集合哪个速度更快?Python集合和字典哪个场景使用更好


无论是字典还是集合,它们都是已经经过了数次优化才能在python内作为基础数据结构而存在的,但是根据不同的场景它们的执行速度也不同 。
例如现在需要保存十万的数据量,直接通过集合来保存的话就可以将执行时间缩短到毫秒级,示例如下:
import timeid = [x for x in range(0, 100000)]def find (id):    unique_price_set = set()    for _, price in id:        unique_price_set.add(price)return len(unique_price_set)start = time.perf_counter()find (products)end = time.perf_counter()print("time{}".format(end - start))time 0.010747099999989018从结果来看就可以知道集合哪怕是一次性的处理十万这种量级的数据都仅仅只是需要一毫秒左右的时间,它对于这种单纯的按照顺序排列并且生成的数据处理上有着极大的优势 。
而对于字典类型的数据结构来说,如果现在是要将多个元组对象保存起来的话,它是更加合适的 。因为字典可以通过单个的键去将各个元组对象给对应的保存起来,而集合则是需要先通查一遍自身的所有元素,然后再去检查元组内部的元素,这样耗费的时间就比较长了 。
【Python字典和集合哪个速度更快?Python集合和字典哪个场景使用更好】总的来说,字典和集合它们在不同的场景下运行速度都是不一样的 。集合在操作不是数据结构类型的对象时速度更快,而字典则是操作需要一一对应的数据时优势更大 。

    猜你喜欢