lambda函数常见用法
# lambda 参数:返回值/表达式 # print((lambda :100)()) # f = lambda a,b : a + b # print(f(10, 20)) # f = lambda a,b,c=100: a + b + c # print(f(10, 20,200)) # print( (lambda *args:args)(20, 30, 40, 50) ) # 不定长参数 -- 可变参数 # *args位置参数 -- 返回一个列表 2 还有a=100,b=200 ---- args的列表和a和b做合并 # print((lambda *args,a=100,b=200:list(args) + [a, b])(10, 20, 30)) # **kwargs # print((lambda **kwargs:kwargs)(name='python',age=28)) # 键值对互转 # {value:key for key,value in kwargs.items()} # print((lambda **kwargs:{value:key for key,value in kwargs.items()})(name='python',age=28)) # lambda可以作为函数的一个参数使用 # f = lambda x,y: x - y # def func(a,b,f): # # return a + b -- 丢失f # return f(a,b) # print(func(10, 20,f)) # 带判断的lambda # a和b,对比大小 返回最大值 # 不够pythonic # def func(a,b): # if a> b: # return a # else: # return b # # print(func(100, 20)) # print((lambda a,b :a if a>b else b)(1000, 20)) # print((lambda a,b,c:c if c > (a if a>b else b) else (a if a>b else b))(100, 2000, 30)) # 需求************* 做排序 -- 年龄 姓名首字母.... info_list=[ {'name':'zhangsan','age':20}, {'name':'lisi','age':18}, {'name':'laowang','age':30} ] info_list.sort(key=lambda info:info['age'],reverse=True) print(info_list)
------- 知识无价,汗水有情,如需搬运请注明出处,谢谢!
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
函数的关键字参数
def func1(name, age, sex, *args): ''' 打印姓名,年龄,性别 ''' print(name) print(age) print(sex) # func1('python', 28,sex='man','s','23') ## 工作经验:不定长参数都是放到最后 func1(name='python', age=30, sex='nv') help(func1) # def func1(a,b, c=100,*args,**kwargs): # print(a) # print(b) # print(c) # print(args) # print(kwargs) # 不定长参数可以不接收值 # func1(10, 20, c=200) # c是第三个位置,能接收第三个数据 # func1(10, 20, 300) # func1(10, 20, 30, 40,50,60,name='python') # 下一行报错:一个参数c只能接收一个值:这里是c接收了30和100 # func1(10,20,30,50,60, c=100,name='python...
- 下一篇
关于引用(python中的伪指针)的理解
# 总结:个人理解,引用不可变的的变量时,随着改变会指向新的地址 # 引用可变的变量时,位置不会随着变量改变而改变 a = 1 b = a print(b) a = 2 # 指向了新的内存地址 print(a) print(b) # b不会变 c = 100 d = 100 print(id(c), id(d)) a = [1, 2] b = a print(a) print(b) a.append(3) # 这里指向的是同一个内存地址 print(a) # b跟着改变了 print(b) # 深拷贝和浅拷贝,内存里的位置不同 -------知识无价,汗水有情,如需搬运请注明出处,谢谢!
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS7安装Docker,走上虚拟化容器引擎之路
- 2048小游戏-低调大师作品
- SpringBoot2整合Redis,开启缓存,提高访问速度
- CentOS关闭SELinux安全模块
- CentOS7编译安装Cmake3.16.3,解决mysql等软件编译问题
- Docker快速安装Oracle11G,搭建oracle11g学习环境
- 设置Eclipse缩进为4个空格,增强代码规范
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装
- Docker安装Oracle12C,快速搭建Oracle学习环境
- SpringBoot2整合MyBatis,连接MySql数据库做增删改查操作