filter函数:遍历序列中的每个元素,判断每个元素得到布尔值,如果是True则留下

# 例子:条件筛选
name =['m_xiaoli','zhangfei','m_xiaoma','m_wangyun']
ret = []
def test(name):
for i in name:
if not i.startswith("m"):
ret.append(i)
return ret
print(test(name)) ['zhangfei'] def test1(array): # (最好不要用全局变量,自己定义一个变量如左)
for i in array:
if not i.startswith("m"):
ret.append(i)
return ret
print(test1(name))
['zhangfei']
# 在写程序时尽量不要把函数写死,
name =['xiaoli_d','zhangfei','xiaoma_d','m_wangyun']
ret = []
def qu_d(n):            # 定义灵活的函数
return n.endswith('_d')
def qu_m(w):
return w.startswith('m_')
def test(func,array):
for i in array:
if not func(i):
ret.append(i)
return ret
ret = test(qu_d,name) ref = []
def test2(func2,array2):
for p in array2:
if not func2(p):
ref.append(p)
return ref
ref = test2(qu_m,name) print('不是_d结尾的:',ret)
print('不是m_开头的:',ref) 不是_d结尾的: ['zhangfei', 'm_wangyun']
不是m_开头的: ['xiaoli_d', 'zhangfei', 'xiaoma_d']
 #不定义,用lamnda函数也可以
name =['xiaoli_d','zhangfei','xiaoma_d','m_wangyun']
ret = []
def test(func,array):
for i in array:
if not func(i):
ret.append(i)
return ret
ret = test(lambda i:i.endswith('_d'),name)
print('不是_d结尾的:', ret) 不是_d结尾的: ['zhangfei', 'm_wangyun']
# 终极版 filter函数
name =['xiaoli_d','zhangfei','xiaoma_d','m_wangyun']
ret = []
def test(func,array):
for i in array:
if not func(i):
ret.append(i)
return ret
ret = filter(lambda i:not i.endswith('_d'),name)
print('不是_d结尾的:',list(ret)) 不是_d结尾的: ['zhangfei', 'm_wangyun']

py-day4 python filter函数的更多相关文章

  1. python filter函数(40)

    一.filter函数简介 filter函数主要用来筛选数据,过滤掉不符合条件的元素,并返回一个迭代器对象,如果要转换为列表list或者元祖tuple,可以使用内置函数list() 或者内置函数tupl ...

  2. Python filter() 函数

    Python filter() 函数 描述 filter() 函数用于过滤序列,过滤掉不符合条件的元素,返回由符合条件元素组成的新列表. 该接收两个参数,第一个为函数,第二个为序列,序列的每个元素作为 ...

  3. day16 Python filter函数

    前戏 movie_people = ["alex","charon","pluto","liu","sb&qu ...

  4. python filter函数应用,过滤字符串

    >>> candidate = 'dade142.;!0142f[.,]ad' >>> filter(str.isdigit, candidate) #保留数字 ' ...

  5. python filter函数

    number_list = range(-, ) less_than_zero = list(filter(lambda x: x < , number_list)) print(less_th ...

  6. filter(函数,可以迭代的对象)

    #!/usr/bin/env python #filter(函数,可以迭代的对象) def f1(x): if x > 22: return True else: return False re ...

  7. python基础——filter函数

    python基础——filter函数 Python内建的filter()函数用于过滤序列. 和map()类似,filter()也接收一个函数和一个序列.和map()不同的是,filter()把传入的函 ...

  8. python的filter()函数

    filter()函数是 Python 内置的另一个有用的高阶函数. filter()函数接收一个函数 f 和一个list,这个函数 f 的作用是对每个元素进行判断,返回 True或 False,fil ...

  9. Python函数式编程:内置filter函数使用说明

    filter操作是函数式编程中对集合的重要操作之一,其作用是从原集合中筛选符合条件的条目,组成一个新的集合. 这在我们日常编程中是非常常见的操作.我们通常的做法是通过循环语句来处理. 而使用filte ...

随机推荐

  1. LNMP(三)

    第二十二次课 LNMP(三) 目录 一.Nginx负载均衡 二.ssl原理 三.生成ssl密钥对 四.Nginx配置ssl 五.php-fpm的pool 六.php-fpm慢执行日志 七.open_b ...

  2. js隐藏字符串中间部分

    在进行web前端页面开发中,有时需要从后台获取用户数据来显示在前台页面,但是考虑到用户信息安全的问题,就需要对这些信息进行处理,使其不完全显示出来,例如姓名,两个字的显示姓,名字用*代替,电话前三位和 ...

  3. 前端特效demo | 值得收藏的6个 HTML5 Canvas 实用案例

    HTML5 动画在Canvas 上得到了充分的发挥,我们 VIP 视频也分享过很多相关的动画特效制作视频,这次给大家带来 6 款超炫酷的HTML5 canvas 动画的 demo,一起来看看吧~ 文内 ...

  4. Linux:Gentoo系统的安装笔记(三)

    这期笔记将是gentoo安装的最后一期了,虽然已经配置内核了,但是也要完成剩下的安装步骤,这离安装完成已经不远了,继续加油!!! 如果中断了安装,请看第二期的笔记进行恢复安装,但请重新编译一次内核,否 ...

  5. Python02(Linux命令)

    Trainning-day01回顾 1.who :查看登录到系统的用户信息 2.pwd :查看当前所在路径 3.ls :查看当前目录的内容 ls -l ls -a ls -la / ls -l -a ...

  6. [转载] java多线程总结(二)

    转载自:http://www.cnblogs.com/lwbqqyumidi/p/3817517.html 作者:Windstep 四.Java多线程的阻塞状态与线程控制 上文已经提到Java阻塞的几 ...

  7. redis命令Sortedset 类型(八)

    Sortedset又叫zset Sortedset是有序集合,可排序的,但是唯一. Sortedset和set的不同之处, 是会给set中的元素添加一个分数,然后通过这个分数进行排序. 命令 1> ...

  8. 赚钱快的app

    赚钱快的app目前强力推荐6款都是很不错的 宝石星球下载地址:http://www.baoshixingqiu.com/redPacket?key=548341 雪梨网APP下载地址 http://w ...

  9. 命令行执行python模块时提示ImportError: No module named xxx

    在pycharm中运行python文件没有问题,切换到cmd中是提示:ImportError: No module named xxx 原因: pycharm在运行时会把当前工程的所有文件夹路径都作为 ...

  10. 网上流行护眼色的RGB值