python基础 filter, lambda 函数表达式
- 编程
- 2023-02-10
filter(function or None, sequence),其中sequence 可以是list ,tuple,string。这个函数的功能是过滤出sequence 中所有以元素自身作为参数调用function时返回True或bool(返回值)为True的元素并以列表返回. filter只能接受两个参(function,sequence) ,其中函数function中只能返回一个值
先上一段简单的代码:
print max(filter(lambda x: 555555 % x == 0, range(100, 999)))
代码的意思是输出 555555 最大的三位数的约数是多少。
首先,这段代码的第一个知识点是python的内置函数 filter
filter()函数,是用来过滤列表的。最简单的说法就是 用一个函数来过滤一个列表,把列表的每一项传递进入过滤函数,过滤函数返回false就从这个列表中删除该项。
filter()函数包括两个参数, function和list。即该函数根据function参数返回的结果是否为真来过滤list参数中的项,最后返回一个新的列表。
简单来讲,filter()函数相当于下面的代码:
c = [b for b in a1 if b > 2] print c
第二个知识点是 lambda()函数
Python支持这种语法,它允许用户快速定义单行的最小函数,这些叫做 lambda的函数,是从Lisp借用来的。
def f(x): return x * 2 g = lambda x: x * 2 (lambda x: x * 2)(3)
根据代码可以看到,lambda函数完成了普通函数相同的事情,并且,lambda在参数列表周围没有括号,并且忽略了return关键字(return隐含存在,因为整个函数只有一行,且该函数没有名称,但可以将它赋值给一个变量进行调用)
最后一段代码展示了lambda函数只是一个内联函数。
- 初学者学习python2还是python3?
- python获取本机IP、mac地址、计算机名
- 详解python2 和 python3的区别
- python基础之删除文件及删除目录的方法
- 用python求第1000个质数的值
- python常用函数年初大总结
- Python3 - 时间处理与定时任务
- Python开发的CMS系统,Silva CMS 3 发布
- python基础之使用os.system来执行系统命令
- 判断python字典中key是否存在的两种方法
- 初学者学习python2还是python3?
- python基础之删除文件及删除目录的方法
- python获取本机IP、mac地址、计算机名
- python获取系统时间(时间函数详解)
- 详解python2 和 python3的区别
- 用python求第1000个质数的值
- Python3 - 时间处理与定时任务
- 命令行看糗百
- Python算法之---冒泡,选择,插入排序算法
- python 中求和函数 sum详解
- range方法在Python2和Python3中的不同
- python3 数组(列表)初始化
- 记一次crontab中date命令错用导致的问题
- MySQL用LIKE特殊字符搜索
- CentOS 7 下修改主机名
- Python3正则表达式之:(?(id/name)y...
- TIOBE编程语言排行榜2019年 Python稳居前三
- 解压命令unzip常用方法汇总
- 解析redis备份文件rdb的两种方法及对比
- 百度视觉语义化平台2.0:交互升级和...
- 5G时代的视觉语义化技术:软硬结合...
- 百度AutoDL重磅升级至3.0:设计、迁...