Discuss / Python / filter的一个疑问

filter的一个疑问

Topic source

针对老师的例子用了lambda, 但是并没有设定x%2 ==1,就成功取出了单数,这个是什么原理,望各位大佬解答。

m = [1,2,4,5,6,9,10,15]
d=filter(lambda x:x%2,m)
for i in d:
    print(i)

#打印如下:
1
5
9
15

廖雪峰

#2 Created at ... [Delete] [Delete and Lock User]

filter用if判断:

if x % 2 相当于 if x % 2 != 0

LeborYi

#3 Created at ... [Delete] [Delete and Lock User]

filter()原本的样子是:filter(函数名,iterable)iterab,简单点说就是一一筛选出1或者True的值............小白的回答

LeborYi

#4 Created at ... [Delete] [Delete and Lock User]

是filter(函数名,iterable)


  • 1

Reply