我是靠谱客的博主 平淡牛排,最近开发中收集的这篇文章主要介绍python 列表推导 为什么快_python集合和列表推导式哪个去重速度快,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

python集合和列表推导式哪个去重速度快

发布时间:2020-12-08 14:51:46

来源:亿速云

阅读:77

作者:小新

这篇文章主要介绍python集合和列表推导式哪个去重速度快,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

先讲讲set(集合)的使用,大括号或 set() 函数可以用来创建集合。set集合类需要的参数必须是迭代器类型的,如:序列、字典等,然后转换成无序不重复的元素集。由于集合是不重复的,所以可以对字符串、列表、元组进行去重操作。

集合是从列表(list)中删除重复值的最快的方法。为了证明这一点,让我们研究以下两种方法之间的差异。

方法 1:使用集合删除列表中的重复值。print(list(set([1, 2, 3, 1, 7])))

方法 2:使用一个列表推导式(list comprehension)从一个列表中删除重复值。def remove_duplicates(original):

unique = []

[unique.append(n) for n in original if n not in unique]

return(unique)

print(remove_duplicates([1, 2, 3, 1, 7]))

性能的差异可以用「timeit」库来测量,这个库允许你对 Python 代码进行计时。下面的代码将每种方法运行了 10,000 次,并且以秒为单位输出了总计时间。import timeit

# Approach 1: Execution time

print(timeit.timeit('list(set([1, 2, 3, 1, 7]))', number=10000))

# Approach 2: Execution time

print(timeit.timeit('remove_duplicates([1, 2, 3, 1, 7])', globals=globals(), number=10000))

对比这两种方法,结果表明,使用集合删除重复值是更加高效的。虽然时间差异看似很小,但实际上在有一个非常大的列表时,能帮你节省很多的时间。

以上是“python集合和列表推导式哪个去重速度快”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注亿速云行业资讯频道!

最后

以上就是平淡牛排为你收集整理的python 列表推导 为什么快_python集合和列表推导式哪个去重速度快的全部内容,希望文章能够帮你解决python 列表推导 为什么快_python集合和列表推导式哪个去重速度快所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(58)

评论列表共有 0 条评论

立即
投稿
返回
顶部