lambda匿名函数,sorted排序,filter()筛选,map()映射
一丶匿名函数
语法:
函数名 = lambda参数:返回值
# 普通的正常的函数
def func(n):
return n * n
ret = func(9)
print(ret) # 匿名函数
a = lambda n : n * n
ret = a(9)
print(ret)
说是匿名函数,可总该有个名字吧,我们可以用__name__来查看一下名字
b = lambda x: x+1
a = lambda n : n * n
print(a.__name__) # __name__的值都是<lambda>
print(b.__name__) # __name__的值都是<lambda>
单个变量传值可以这样传,那假如两个或多个变量呢,该怎么样呢?我们可以用小括号括起来,要不就会报错
def func(x, y):
return x, y print(func(1,2)) #(1,2) suiyi = lambda x, y : (1, 2) # 笔试题
print(suiyi)
print(suiyi(250,38)) #(1,2)
注意:
1.函数的参数可以有多个,多个参数之间用逗号隔开
2.匿名参数不管多复杂,只能写一行,且逻辑结束后直接返回数据
3.返回值和正常函数一样,可以是任意数据类型
二丶sorted排序
lst = [16, 18, 32, 54, 12, 9]
lst.sort() # list的方法
print(lst) #[9, 12, 16, 18, 32, 54]
#内置函数中提供了一个通用的排序方案, sorted()
s = sorted(lst)
print(s) #[9, 12, 16, 18, 32, 54]
语法:
sorted(Iterable,key = None,reverse=False)
Iterable:可迭代对象
key:排序规则(排序函数),在sorted内部将可迭代对象的每一个元素传递给这个函数的参考值,根据函数运算的结果进行排序(根据权重进行排序)
reverse:是否是倒序.True:倒序,False:正序
sorted可以跟lambda组合使用
lst = [
{'name':"迪迦奥特曼","age":48},
{"name":"雷欧娜",'age':38},
{"name":"赛文","age":39},
{"name":"泰罗","age":32},
{"name":"狗哥无敌","age":28}
] ll = sorted(lst, key=lambda el: len(el['name']), reverse=False)
print(ll)

三丶filter()筛选函数
语法:
filter(function,Iterable)
function:用来筛选的函数,在filter中会自动的把iterable中的元素传递给function.然后根据function返回的True或者False来判断是否保留此项数据
Iterable:可迭代对象
lst = ["张无忌", "张铁林", "马丹", "曹丹","马大帅"]
def func(el):
if el[0] == '张':
return False # 不想要的
else:
return True # 想要的
# 筛选,
# 将lst中的每一项传递给func, 所有返回True的都会保留, 所有返回False都会被过滤掉
f = filter(lambda el: el[0]!="张", lst)
print("__iter__" in dir(f)) # 判断是否可以进行迭代
for e in f:
print(e)
四丶map()映射函数
语法:
map(function,Iterable)
可以对可迭代对象中的每一个元素进行映射,分别取执行function
# 计算列表中没个数字的平方
#普通函数
lst = [1,4,7,2,5,8]
ll = []
for el in lst:
ll.append(el**2)
print(ll)
#映射
def func(el):
return el**2
m = map(lambda el: el**2, lst) # 把后面的可迭代对象中的每一个元素传递给function, 结果就是function的返回值
print(list(m))

lambda匿名函数,sorted排序,filter()筛选,map()映射的更多相关文章
- lambda匿名函数sorted排序函数filter过滤函数map映射函数
lambda函数:表示匿名函数,不需要def来声明,一句话就能搞定. 语法:函数名=lamda 参数:返回值 求10的10次方 f=lambda n:n**n print(f(10)) 注意: 函数名 ...
- lambda匿名函数,sorted(),filter(),map(),递归函数
1.lambda匿名函数 为了解决一些简单的需求而设计的一句话函数 #计算n的n次方 def func(n): return n**n print(func(10)) f = lambda n: n* ...
- Python_Mix*匿名函数,sorted,filter,map,递归函数,二分法查找
lambda匿名函数(函数名统一都叫lambda) 为了解决简单的需求而设计的一句话函数 语法: lambda 参数 返回值 n = lambda a,b: max(a,b) ret = n(9,4) ...
- python 内置函数,匿名函数,sorted,filter,map,递归,二分法,冒泡算法 eval
############################总结#################################1. lambda 匿名函数 语法——lambda 参数:返回值 __na ...
- 小学生都能学会的python(<lamda匿名函数,sorted(),filter(),map(),递归函数>)
小学生都能学会的python(<<lamda匿名函数,sorted(),filter(),map(),递归函数,二分法>> 1. lambda 匿名函数 lambda 参数: ...
- 匿名函数、sorted()、filter()、map()、递归
一.匿名函数 1.lambda 匿名函数 方法 lambda 参数:返回值 (函数名统一叫lambda) def func(n): return n**2 print(func(3)) #这是一个普通 ...
- 匿名函数 sorted() filter() map() 递归函数
一. lambda() 匿名函数 说白了,从字面理解匿名函数就是看不见的函数,那么他的看不见表现在哪里呢? 其实就是在查询的时候他们的类型都是lambda的类型所以叫匿名,只要是用匿名函数写的大家 ...
- 2018.8.15 python 中的sorted()、filter()、map()函数
主要内容: 1.lambda匿名函数 2.sorted() 3.filter() 4.map() 5.递归函数 一. lambda匿名函数 为了解决一些简单的需求而设计的一句话函数 # 计算n的n次方 ...
- Python之路Python作用域、匿名函数、函数式编程、map函数、filter函数、reduce函数
Python之路Python作用域.匿名函数.函数式编程.map函数.filter函数.reduce函数 一.作用域 return 可以返回任意值例子 def test1(): print(" ...
随机推荐
- eos各表的关系
在使用EOS WorkFlow的过程中,无论是开发者在“开发环境”中定义业务流程,还是“工作流引擎”控制流程流转,或是工作流参与者使用的“客户端”,再或者管理员使用的“管理与监控工具”,在这期间都会贯 ...
- 关于mysql查询最近一条记录
关于mysql查询最近一条记录 最近项目中遇到需要查询记录当前时间最近的一条记录的问题,开始感觉无从下手,后来逐步发现了三种解决方案. 下策——查询出结果后将时间排序后取第一条 select * fr ...
- hdu1064
#include <iostream>#include<iomanip>using namespace std; int main(){ float total_sum=0.0 ...
- 2017-10-4 清北刷题冲刺班p.m
P102zhx a [问题描述]你是能看到第一题的 friends 呢.——hja两种操作:1.加入一个数.2.询问有多少个数是?的倍数.[输入格式]第一行一个整数?,代表操作数量.接下来?行,每行两 ...
- DNS 网关 路由 交换机 网桥 协议 服务器 这些都是什么关系?
来源:知乎 服务器:为你提供服务的机器.相当于马路边上的各种店面.虽然理论上任何一户人家都能开店为你提供服务,但是因为各种硬件资源限制而不适合开店.比如:小区道路比较窄(宽带带宽比较窄).家里地方太小 ...
- C#正则表达式快速入门
作者将自己在学习正则表达式中的心得和笔记作了个总结性文章,希望对初学C#正则表达式的读者有帮助. [内容] 什么是正则表达式 涉及的基本的类 正则表达式基础知识 构建表达式基本方法 编写一个检验程序 ...
- git 提交解决本地与远程冲突
首先介绍一下背景. 如果有一个工程A,开始时test.txt 的内容如下 chenfool hello world 作者通过 git clone 的方式,将这个项目download 到本地. 此时,作 ...
- [sql Server]除非另外还指定了TOP 或 FOR XML,否则,ORDER BY 子句在视图、内联函数、派生表、子查询和公用表表达式中无效
今天遇到一个奇怪的问题,项目突然要从mysql切换到sql server数据库,包含order by 子句的嵌套子查询报错. 示例:select top 10 name,age,sex from ( ...
- 获取.net应用的版本及依赖信息
在制作打包安装器时,通常要获取要安装的程序的名称.版本.说明,以及依赖的版本信息,经过翻阅MSDN,stackoverflow,终于搞定了. 1. 获取应用的依赖信息 var ans = System ...
- ldap第二天-yum安装LDAP + phpLDAPadmin
1.安装LDAP服务器和客户端,migrationtools工具包 yum install -y openldap-servers openldap-clients migrationtools 2. ...