当前位置: 首页 > news >正文

7.8 匿名函数

7.8 匿名函数

  1. 有名函数:有名字的函数
#有名函数的定义
def func():pass#有名函数的调用
func()
  1. 匿名函数
    匿名函数:没有函数名的函数
  • lambda关键字定义
  • 语法:
    • (lambda 形参 : 逻辑代码 )(实参)
#赋值又变成有名函数,不建议这样写
f=lambda x,y : x+y
f(1,2) 
print((lambda x,y:x+y)(1,2)) #匿名函数也能调用,但是调用需要注意只能使用一次,匿名函数一般不单独使用。
#而是与max(),min(),map(),sorted(),filter()这些内置函数一起使用。
  1. 内置函数
  • 'a'.strip()

  • 对于python而言,在python解释器启动时候内置函数就存在

  1. lambda & max()
    max() :将值丢到max()函数里面返回最大值,传入参数类型为字典,则默认按键值取最大。
#薪资信息
salary_dict={'jane':8000,'coco':3000,'mike':5000,'lihua':10000}

找到工资最高的人

  • max() 默认用法
    • 找出薪资最高的人可以使用max()方法但是max默认比较的是字典的key
    • 按字母比较从小到大:coco,lihua,jane,mike
max_salary=max(salary_dict)
print(max_salary)
mike
num_max=max(2,4,3,5,78,53.24)
print(num_max)
78
  • max用法2 : max(可迭代对象,key=func)
def func(name):return salary_dict[name]max_salary=max(salary_dict,key=func) 
#将字典作为参数一个一个传入函数func中,返回值按照返回值比较大小,返回工资最高的人
print(max_salary)
lihua
  • 上述代码逻辑
    • salary_dict变成迭代器对象salary_dict_iter
    • res=salary_dict.__iter.next
    • res丢入函数func中,返回8000,3000,5000,10000
    • 得到函数的返回值把这个返回值作为判断依据
#lambda & max() 
salary_max=max(salary_dict,key=lambda name:salary_dict[name])
print(salary_max)
  1. lambda & min()
  • min()返回最小值,类似于max
salary_min=min(salary_dict,key=lambda name:salary_dict[name])
print(salary_min)
coco
  1. lambda & sorted()
#默认用法
lis=[1,3,4,2,1,4,5]
sort_lis=sorted(lis)
print(sort_lis)
[1, 1, 2, 3, 4, 4, 5]
#lambda & sorted() salary_sort=sorted(salary_dict,key=lambda name:salary_dict[name])
#按照值排序返回排序后的key
print(salary_sort)
['coco', 'mike', 'jane', 'lihua']
7. lambda & map()映射
name_lis=['coco','jane','mike','lihua']#在每个元素后添加3000
name_lis_map=map(lambda name:f'{name}:3000',name_lis)
print(name_lis_map) #name_lis_map是一个迭代器
print(list(name_lis_map))
<map object at 0x0000018374BE2020>
['coco:3000', 'jane:3000', 'mike:3000', 'lihua:3000']
  1. lambda & filter() 过滤
lis=['coco:3000', 'jane:3000', 'mike:3000', 'lihua:3000','aike']#过滤出不以3000为结尾的元素
lis_filter=filter(lambda x:not x.endswith('3000'),lis) 
print(lis_filter) #lis_filter 是迭代器
print(list(lis_filter))
<filter object at 0x0000018374BE30A0>
['aike']
http://www.sczhlp.com/news/40497/

相关文章:

  • c语言之guitool制作的点阵显示
  • 龙口做网站讯展网站优化推广
  • 做博客网站要怎么配置的服win10必做的优化
  • 网站做权重有用吗今日军事新闻视频
  • 各购物网站销售特点百度搜索引擎官网
  • 2025/8/26 矩阵部分测试
  • 如何用labelimg标注yolo数据集,并利用工具自动划分数据集
  • 做网站时已做好了ps怎么倒入网址查询服务中心
  • 做彩票网站代理360推广登录入口官网
  • 平面设计师必看的网站seo技术培训学校
  • 泸州网站开发公司求几个好看的关键词
  • 微信网页版登录二维码重庆seo
  • 网站开发系统绿色版电商培训心得体会
  • wordpress网站刷新宁波seo教程app推广
  • 避免网站侵权新闻源软文推广平台
  • 实时平台Flink热更新技术——实现不停机升级!
  • 擅长某种抽象思考
  • SpringBoot集成Sa-Token进行登录鉴权
  • 视频讲解|Python实现LSTM、xLSTM(sLSTM、mLSTM)及注意力机制:文本与电力负荷时间序列预测
  • 基于视觉分析的AI视频理解系统设计方案
  • 做网站界面一般用什么来做seo推广主要做什么
  • 流行网站设计广州seo教程
  • 做旅游网站的论文网站建设技术解决方案
  • vi企业形象设计全套案例青岛自动seo
  • 什么网站可以快速做3d效果图考研比较厉害的培训机构
  • 音乐网站数据库怎么做抖音代运营公司
  • 太原商城网站建设长春百度网站快速排名
  • 网站建设的误区网络营销sem培训
  • 自己做网站卖机器设备免费开发软件制作平台
  • 做网站的不肯给ftp深圳网络营销推广服务