首页 > 编程知识 正文

filter 函数(pythonfilter函数)

时间:2023-05-06 18:05:17 阅读:78998 作者:1664

for遍历,首先考虑导出式和filter函数

列表导出公式也称为列表解析公式,根据现有列表,有效地编制新列表,进行有效的列表检索和条件判断。

派生表达式的语法格式如下

[表达式for迭代变量in可迭代对象[if表达式]这里的[if表达式]不是必需的,可以忽略。

简单的列表分析

[ item * 2福里teminrange (10 ) ]

[0、2、4、6、8、10、12、14、16、18]条件列表分析

只有if语句

[item*2foriteminrange(10 ) if item 5]

[12、14、16、18 ]包含if-- else的语句

[ item *2if item5else item *3foriteminrange (10 )

[0、3、6、9、12、15、12、14、16、18]条件子句在for之前时必须带else,条件子句在for之后时不得带else。 不然我就报告错误!

多重循环的列表分析

[(I,j ) forIinrange(3) for j in range(3)3]

[ (0,0 ),0,1 ),0,2 ),1,0 ),1,1 ),2 ),0 ),2,1 ),2,2,2 ),2 ]同样也可以进行词典和元组的分析

d={ ' student % d ' % item : randint (0,10 ) foriteminrange (10 ) }

{k:V for k,v in d.items () if v 5 }

{'student3': 10、' student5': 6、' student6': 7、' student8': 9}输出一个文件夹中后缀为. mp4的文件名

file=[ fileforfileinos.list dir '/home/demo/' ] if file.endswith '.MP4 ' ] for循环大多数先过滤特定元素,然后再进行for循环

三角函数

过滤器(function,iterable )过滤器函数。 接收两个参数,第一个是函数,第二个是序列,序列中的每个元素作为参数传递给函数进行判断,返回True或False,最后返回True的元素放入新列表中。

注意:返回迭代器对象。 转换为列表时,可以使用list ()进行转换。

defis_odd(n ) :

返回n %2==1

L=filter(is_odd,range ) ) )

print(list(L ) ) #[1、3、5、7、9]通常使用匿名函数

L=filter(lambdax:x%2,范围(10 ) )

打印(list (l ) ) # [ 1,3,5,7,9 ]处理字符串

d={ ' student % d ' % item : randint (0,10 ) foriteminrange (10 ) }

d=filter(lambdax:not ) x%2),d.values ) )

打印(列表(d ) )

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。