Python 集与列表

2022-01-17 00:00:00 python list data-structures performance set

问题描述

在 Python 中,哪种数据结构更高效/更快?假设顺序对我来说并不重要,并且无论如何我都会检查重复项,那么 Python 集是否比 Python 列表慢?

In Python, which data structure is more efficient/speedy? Assuming that order is not important to me and I would be checking for duplicates anyway, is a Python set slower than a Python list?


解决方案

这取决于你打算用它做什么.

It depends on what you are intending to do with it.

在确定对象是否存在于集合中时,集合明显更快(如 x in s),但在迭代其内容时比列表慢.

Sets are significantly faster when it comes to determining if an object is present in the set (as in x in s), but are slower than lists when it comes to iterating over their contents.

您可以使用 timeit 模块来查看哪种方式更适合您的情况.

You can use the timeit module to see which is faster for your situation.

相关文章