程序员

如何使用python对列表、字典、集合进行过滤筛选?

2020-12-14  本文已影响0人  糖醋沼跃鱼

实际案例

解决方案

列表

filter函数

filter(lambda x:x>0, data)

列表解析

[x for x in data if x>=0]

字典

字典解析

{k:v for k, v in d.iteritems() if v>90}

集合

集合解析

{x for x in s if x%3 == 0}

以上解决方法对应上述问题

补充代码

生成一个范围随机数列表

from random import randint
list1 = [randint(-10,10) for x in range(10)]

使用timeit对第一个问题的两种解决方法做一个运行时间对比,发现列表解析的方法是要优于filter函数的。并且这两种方式,都要优于通过普通迭代的方法。

生成一个范围随机数字典

dict1 = {k:radint(60, 100) for k in range(1, 21)}

大家加油

上一篇 下一篇

猜你喜欢

热点阅读