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. shell编程(二)

    第三十二次课 shell编程(二) 目录 十五.shell中的函数 十六.shell中的数组 十七.告警系统需求分析 十八.告警系统主脚本 十九.告警系统配置文件 二十.告警系统监控项目 二十一.告警 ...

  2. js /Date(1550273700000)/ 格式转换

    self.FormatJsonDate = function (jsonStr) { var tmp = ""; if (jsonStr == null || jsonStr == ...

  3. [ 转 ] RESTful

    一.什么是RESTful 定义: REST全程是Representational State Transfer,表述性状态转移.它首次出现在2000年Roy Fielding的博士论文中,Roy Fi ...

  4. Javascript学习---倒计时

    function fn() { var now = new Date(); // 此时此刻的时间 var old = new Date(2018, 9, 30); // 2018,6,25 var t ...

  5. openstack常用命令-neutron篇

    列出当前租户所有的网络 neutron net-list 列出所有租户的所有网络(需要管理员权限) neutron net-list --all-tenants 创建一个网络(vlan/flat) n ...

  6. 3D数学基础(二)向量

    向量的基本运算包括加法.减法.点乘.叉乘.单位化运算等,而在游戏开发中使用最为广泛的是减法.点乘.叉乘.单位化运算.向量是具有方向和长度的矢量,有2D.3D.4D等的.在游戏开发里面一般使用的是2D和 ...

  7. 小伙 zwfw-new.hunan.gov.cn.iname.damddos.com [222.240.80.52]

    由于这个应用出问题非常影响用户体验:于是立马让运维保留现场 dump 线程和内存同时重启应用,还好重启之后恢复正常.于是开始着手排查问题.

  8. Gravatar 头像使用

    Gravatar :如果在Gravatar的服务器上放置了你自己的头像,那么在任何支持Gravatar的blog或者留言本上留言时,只要提供你与这个头像关联的email地址,就能够显示出你的Grava ...

  9. matlab函数每天进步一点点

    1. 读mp4视频 : xyloObj = VideoReader('su35.mp4'); 链接 2. 查看有几个相同的函数和当前使用的函数是哪个路径下的: which -all xxx;    w ...

  10. 往redis中存储数据是利用pipeline方法

    在redis中保存数据时,保存和设置有效时间是分开写的话,如果中间出现的异常,这会导致数据永久有效,因此就可以采用pipeline方法. # 创建redis管道对象,可以一次执行多个语句 pipeli ...