服务器之家

服务器之家 > 正文

python 内置函数filter

时间:2020-11-13 00:34     来源/作者:脚本之家

python 内置函数filter

?
1
2
3
4
5
6
7
class filter(object):
 """
 filter(function or None, iterable) --> filter object
 
 Return an iterator yielding those items of iterable for which function(item)
 is true. If function is None, return the items that are true.
 """

filter(func,iterator)

    func:自定义或匿名函数中所得值是布尔值,true将保留函数所取到的值,false则取反。
    iterator:可迭代对象。

例:

     过滤列表['text_test_text', 'test_text_1', 'text_test_2', '3_test_text', 'test_test']
     只要含有text字符串及将其取出 or 取反。

s.rfind'text'+1

     Python3中 rfind() 返回字符串最后一次出现的位置,如果没有匹配项则返回-1。
     数字中0是false,0以上的整数都是true,所以s.rfind'text'后会有+1,没找到字符及-1+1=0.

# Filter

?
1
2
3
4
5
6
li = ['text_test_text', 'test_text_1', 'text_test_2', '3_test_text', 'test_test']
 
# 默认保留函数所取到的值
print(list(filter(lambda s: s.rfind('text') + 1, li)))
# 取反,下三个例子是一样的
print(list(filter(lambda s: not s.rfind('text') + 1, li)))

# Noe 自定义函数

?
1
2
3
4
5
6
7
8
9
10
11
12
l1 = ['text_test_text', 'test_text_1', 'text_test_2', '3_test_text', 'test_test']
 
 
def distinguish(l):
 nl = []
 for s in l:
  if s.rfind("text") + 1:
   nl.append(s)
 return nl
 
 
print(distinguish(l1))

# Two 自定义高阶函数

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
l2 = ['text_test_text', 'test_text_1', 'text_test_2', '3_test_text', 'test_test']
 
 
def f(s):
 return s.rfind('text') + 1
 
 
def distinguish(func, array):
 nl = []
 for s in array:
  if func(s):
   nl.append(s)
 return nl
 
 
print(distinguish(f, l2))

# Three 匿名函数

?
1
2
3
4
5
6
7
8
9
10
11
l3 = ['text_test_text', 'test_text_1', 'text_test_2', '3_test_text', 'test_test']
 
 
def distinguish(func, array):
 nl = []
 for s in array:
  if func(s):
   nl.append(s)
 return nl
 
print(distinguish(lambda s: s.rfind('text') + 1, l3))

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

相关文章

热门资讯

2020微信伤感网名听哭了 让对方看到心疼的伤感网名大全
2020微信伤感网名听哭了 让对方看到心疼的伤感网名大全 2019-12-26
Intellij idea2020永久破解,亲测可用!!!
Intellij idea2020永久破解,亲测可用!!! 2020-07-29
歪歪漫画vip账号共享2020_yy漫画免费账号密码共享
歪歪漫画vip账号共享2020_yy漫画免费账号密码共享 2020-04-07
电视剧《琉璃》全集在线观看 琉璃美人煞1-59集免费观看地址
电视剧《琉璃》全集在线观看 琉璃美人煞1-59集免费观看地址 2020-08-12
最新idea2020注册码永久激活(激活到2100年)
最新idea2020注册码永久激活(激活到2100年) 2020-07-29
返回顶部

651
Weibo Article 1 Weibo Article 2 Weibo Article 3 Weibo Article 4 Weibo Article 5 Weibo Article 6 Weibo Article 7 Weibo Article 8 Weibo Article 9 Weibo Article 10 Weibo Article 11 Weibo Article 12 Weibo Article 13 Weibo Article 14 Weibo Article 15 Weibo Article 16 Weibo Article 17 Weibo Article 18 Weibo Article 19 Weibo Article 20 Weibo Article 21 Weibo Article 22 Weibo Article 23 Weibo Article 24 Weibo Article 25 Weibo Article 26 Weibo Article 27 Weibo Article 28 Weibo Article 29 Weibo Article 30 Weibo Article 31 Weibo Article 32 Weibo Article 33 Weibo Article 34 Weibo Article 35 Weibo Article 36 Weibo Article 37 Weibo Article 38 Weibo Article 39 Weibo Article 40