python 内置函数filter

 更新时间:2017年06月01日 08:40:15   投稿:lqh  
这篇文章主要介绍了python 内置函数filter的相关资料,需要的朋友可以参考下

python 内置函数filter

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

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 自定义函数

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 自定义高阶函数

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 匿名函数

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))

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

相关文章

  • python isinstance函数用法详解

    python isinstance函数用法详解

    这篇文章主要介绍了python isinstance函数用法详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-02-02
  • python groupby 函数 as_index详解

    python groupby 函数 as_index详解

    今天小编就为大家分享一篇python groupby 函数 as_index详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-12-12
  • 基于Python实现简易学生信息管理系统

    基于Python实现简易学生信息管理系统

    这篇文章主要为大家详细介绍了python实现简易学生信息管理系统,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-07-07
  • pypy提升python项目性能使用详解

    pypy提升python项目性能使用详解

    这篇文章主要为大家介绍了pypy提升python项目性能使用详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-12-12
  • Python 3 中使用 Memcached的示例详解

    Python 3 中使用 Memcached的示例详解

    pymemcache是另一个流行的、功能丰富的Python Memcached客户端库,比python-memcached提供了复杂的操作和性能,在 Python3 中,使用 Memcached,高性能的分布式内存对象缓存系统,可以通过多个第三方库来实现,本文介绍Python 使用 Memcached相关知识,感兴趣的朋友一起看看吧
    2024-02-02
  • Python中模块string.py详解

    Python中模块string.py详解

    这篇文章主要介绍了Python中模块之string.py的相关资料,文中介绍的非常详细,对大家具有一定的参考价值,需要的朋友们下面来一起看看吧。
    2017-03-03
  • Python元组定义及集合的使用

    Python元组定义及集合的使用

    这篇文章主要介绍了Python元组定义及集合的使用,元组是Python中的一个内置的数据结构,它是一个不可变的序列,所谓的不可变序列就是不可以进行增删改的操作
    2022-07-07
  • Python标准库shutil用法实例详解

    Python标准库shutil用法实例详解

    这篇文章主要介绍了Python标准库shutil用法,结合实例形式分析了shutil库针对文件与文件夹各种常见操作技巧与相关使用注意事项,需要的朋友可以参考下
    2018-08-08
  • tensorflow模型的save与restore,及checkpoint中读取变量方式

    tensorflow模型的save与restore,及checkpoint中读取变量方式

    这篇文章主要介绍了tensorflow模型的save与restore,及checkpoint中读取变量方式,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-05-05
  • python 实现图片上传接口开发 并生成可以访问的图片url

    python 实现图片上传接口开发 并生成可以访问的图片url

    今天小编就为大家分享一篇python 实现图片上传接口开发 并生成可以访问的图片url,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-12-12

最新评论