博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
第八章、函数进阶之字典生成式与匿名函数
阅读量:5292 次
发布时间:2019-06-14

本文共 1145 字,大约阅读时间需要 3 分钟。

目录

第八章、函数进阶之字典生成式与匿名函数

一、 字典生成式一般与zip连用

压缩后的每一个元素是元组类型的keys=["name","age","gender"]values=["nick",19,"male"]res=zip(keys,values)for i in res:    print(i)    print(type(i))print(res)
('name', 'nick')
('age', 19)
('gender', 'male')

二、匿名函数

1. 什么是函数

匿名函数就是没有名字的函数,使用一次就会被回收,加括号就可以运行

res = (lambda x,y: x+y)(1,2)print(res)-------------------------------------------------------------3

2. 与内置函数连用

​ storted():对容器进行从小到大排序

salary_list_dict = {'tank':2,'nick':5,'sean':8}salary_list = list(salary_list_dict.items())#变为列表print(sorted(salary_list,key = lambda i:i[1])) #把salary_list变成迭代器,取出所有元素i,i[1]就是元组的第二个值
[('tank', 2), ('nick', 5), ('sean', 8)]
salary_list_dict = {'tank':2,'nick':5,'sean':8}salary_list = list(salary_list_dict.items())print(list(map(lambda i:i[1] + 2000,salary_list)))   #让他们的工资都加2000
[2002, 2005, 2008]
salary_list_dict = {'tank':2,'nick':5,'sean':8}salary_list = list(salary_list_dict.items())print(list(filter(lambda i:i[1] <6,salary_list)))  #输出薪资小于6的人名
[('tank', 2), ('nick', 5)]

工作原理:

1740897-20190814082356502-230982401.jpg

  1. 首先将可迭代对象变为迭代器对象

  2. i当做参数传给第一个参数指定的函数,然后内置方法判断函数

转载于:https://www.cnblogs.com/demiao/p/11348959.html

你可能感兴趣的文章
Competing Consumers Pattern (竞争消费者模式)
查看>>
HDUOJ ------1398
查看>>
cf--------(div1)1A. Theatre Square
查看>>
Android面试收集录15 Android Bitmap压缩策略
查看>>
Tomcat 报错的解决方法:The APR based Apache Tomcat Native library which allows optimal
查看>>
最长公共子串问题(LCS)
查看>>
TortoiseSVN is locked in another working copy
查看>>
PHP魔术方法之__call与__callStatic方法
查看>>
ubuntu 安装后的配置
查看>>
Html学习_简易个人网页制作
查看>>
angular中ng-bind指令小案例
查看>>
jqery总结
查看>>
Lodop获取客户端主网卡ip地址是0.0.0.0
查看>>
VSCODE更改文件时,提示:EACCES: permission denied的解决办法(mac电脑系统)
查看>>
web前端之路,js的一些好书(摘自聂微东 )
查看>>
【模板】对拍程序
查看>>
微信小程序开发初体验
查看>>
dos批处理(bat)运行exe
查看>>
关键字
查看>>
Pycharm安装Markdown插件
查看>>