filter()过滤

2015-04-08  本文已影响48人  西凉0

filter(functionorNone, sequence)

对sequence中的item依次执行function(item),将执行结果为True(不为0)的item组成一个List/String/Tuple(取决于sequence的类型)返回,False则退出(0),进行过滤。

>>>defdiv(n):returnn%2

...

>>>filter(div,range(5))#返回div输出的不等于0的真值

[1,3]

>>>filter(div,range(10))

[1,3,5,7,9]

>>>filter(lambdax:x%2,range(10))#lambda函数返回奇数,返回列表

[1,3,5,7,9]

>>>filter(lambdax:notx%2,range(10))

[0,2,4,6,8]

>>>deffin(n):returnn!='z'#过滤'z'函数,出现z则返回False

...

>>>filter(fin,'zhoujy')#'z'被过滤

'houjy'

>>>filter(lambdax:x!='z','zhoujy')#labmda返回True值

'houjy'

>>>filter(lambdax:notx=='z','zhoujy')#返回:字符串

'houjy'

http://blog.chinaunix.net/uid-20788636-id-4257339.html

上一篇 下一篇

猜你喜欢

热点阅读