在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集合和字典哪个场景使用更好】总的来说,字典和集合它们在不同的场景下运行速度都是不一样的 。集合在操作不是数据结构类型的对象时速度更快,而字典则是操作需要一一对应的数据时优势更大 。
猜你喜欢
- Python字典对象的运行机制是怎样的?Python字典工作原理是什么
- python怎样进行文件名匹配?python文件名匹配的方法是什么?
- Python深拷贝和浅拷贝如何理解?Python深浅拷贝的区别在哪
- Python怎么用字典格式化字符串?Python格式化字符串如何用字典
- 学习Python到底是培训还是自学合适呢?零基础可以学会Python吗?
- 怎么使用Python库实现队列?实现python队列的方法有哪些?
- 什么是条件变量?Python中条件变量如何使用?
- python如何统计输入字符串中字符的个数?python统计字符的个数代码
- 如何在python中设置随机种子?numpy库中的随机数种子如何产生?
- 如何用Python代码实现词云?python实现词云的方法有哪些?
