Python学习第九课——匿名函数
匿名函数
# 匿名函数
func = lambda x: x + 1 # x表示参数 x+1表示处理逻辑
print(func(10)) # 输出结果为11 # 例:如何将name="hanhan" 改为 hanhan_shuai的形式 # 普通函数写法
name = "hanhan" def change_name(x):
return name + '_shuai' res = change_name(name)
print(res) # 输出结果 hanhan_shuai # 匿名函数写法 fun = lambda x: x + '_shuai'
print(fun(name)) # 输出结果 hanhan_shuai # 匿名函数也可以返回多个值 f = lambda x, y, z: (x + 1, y + 1, z + 4)
print(f(1, 2, 3)) # 输出结果 (2, 3, 7)
reduce函数
# 利用reduce函数完成列表中元素的累加
num = [1, 2, 3, 4, 5]
# 用之前要先导入
from functools import reduce # reduce(function, sequence[, initial]) -> value
res = reduce(lambda x, y: x + y, num, 1) # 第一个参数是函数
res1 = reduce(lambda x, y: x + y, num, 0) # 第二个是逻辑运算,第三个是起始值
res2 = reduce(lambda x, y: x + y, num) # 默认为0
print(res) # 输出结果 16
print(res1) # 输出结果 15
print(res2) # 输出结果 15
filter函数
#例:将看电影列表人中过滤掉以‘sb’结尾的名字,用filter实现。 # filter(function or None, iterable) --> filter object
movie_people = ['alex_sb', 'wupeiqi_sb', 'linhaifeng', 'yuanhao_sb']
li = filter(lambda n: not n.endswith('sb'), movie_people)
print(list(li)) # 输出结果 ['linhaifeng']
map函数
# map函数 map(func, *iterables) --> map object
# 用map实现将列表中的值叠加1
num = [1, 2, 3, 4, 5]
res = map(lambda x: x + 1, num) # map第一个参数为处理方法,第二个参数为可迭代对象
print(res)
# for i in res:
# print(i)
print(list(res)) # 输出结果 [2, 3, 4, 5, 6] # 用map实现将小写转大写 st = "hanhanshigeshuaige" res1 = map(lambda x: x.upper(), st)
print(list(res1))
一些常用的内置函数
print(abs(-1)) # 取绝对值 print(bin(20)) # 将十进制转换为二进制
print(hex(12)) # 10进制->16进制
print(oct(12)) # 10进制->8进制 name = '憨憨好'
print(bytes(name, encoding='utf-8')) # 将字符串转换为字节
print(bytes(name, encoding='utf-8').decode('utf-8')) # 解码 将字节转化为字符串
总结
# map() 处理序列中的每个元素,得到的结果是一个‘列表’,读‘列表’元素个数及位置与原来一样 # filter() 遍历序列中的每个元素,判断每个元素得到布尔值,如果是True就留下来。 # reduce() 处理一个序列,然后把序列进行合并操作
Python学习第九课——匿名函数的更多相关文章
- 记录我的 python 学习历程-Day13 匿名函数、内置函数 II、闭包
一.匿名函数 以后面试或者工作中经常用匿名函数 lambda,也叫一句话函数. 课上练习: # 正常函数: def func(a, b): return a + b print(func(4, 6)) ...
- Python学习笔记010——匿名函数lambda
1 语法 my_lambda = lambda arg1, arg2 : arg1 + arg2 + 1 arg1.arg2:参数 arg1 + arg2 + 1 :表达式 2 描述 匿名函数不需要r ...
- python学习之lambda匿名函数
1 Python支持运行时使用“lambda”建立匿名函数(anonymous functions that are not bound to a name). python "lambda ...
- python 学习笔记2 匿名函数
# 匿名函数 lambda a,b : a+b# a.j.from functools import reduce students = [{'name': '张三', 'age': 18, 'hei ...
- 【C语言探索之旅】 第一部分第九课:函数
内容简介 1.课程大纲 2.第一部分第九课:函数 3.第一部分第十课预告: 练习题+习作 课程大纲 我们的课程分为四大部分,每一个部分结束后都会有练习题,并会公布答案.还会带大家用C语言编写三个游戏. ...
- 初学 Python(十三)——匿名函数
初学 Python(十三)--匿名函数 初学 Python,主要整理一些学习到的知识点,这次是匿名函数. # -*- coding:utf-8 -*- #关键字lambda定义的函数都是匿名函数 #做 ...
- python学习第九讲,python中的数据类型,字符串的使用与介绍
目录 python学习第九讲,python中的数据类型,字符串的使用与介绍 一丶字符串 1.字符串的定义 2.字符串的常见操作 3.字符串操作 len count index操作 4.判断空白字符,判 ...
- Elasticsearch7.X 入门学习第九课笔记-----聚合分析Aggregation
原文:Elasticsearch7.X 入门学习第九课笔记-----聚合分析Aggregation 版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. ...
- Python练习题-1.使用匿名函数对1~1000求和,代码力求简洁。
Python 练习 标签(空格分隔): Python Python练习题 Python知识点 一.使用匿名函数对1~1000求和,代码力求简洁. 答案: In [1]: from functools ...
随机推荐
- 多个python版本共存时,查看pip命令属于哪个python的命令
使用命令: pip -V 或 pip3 -V
- oracle查询表统计行数与注释
SELECT TABLE_NAME,NUM_ROWS,(select COMMENTS from user_tab_comments WHERE TABLE_NAME=C.TABLE_NAME) FR ...
- xml配置问题--------不允许有匹配 "[xX][mM][lL]" 的处理指令目标
剪不断,理还乱,是BUG 相遇:不允许有匹配 "[xX][mM][lL]" 的处理指令目标 在编写MyBatic框架时,纯手编写mybatic-config.xml文件,遇 ...
- 局域网内Linux下开启ftp服务的“曲折路”和命令复习
今天主要学习了Linux下网络配置以及vsftp(FTP)和samba的服务配置,学习起来,难度也就一般,并没有特别难,可是在可以做实验的时候,却并没有自己想像的那么顺利,可见,很多事情看起来不难,做 ...
- vPC配置
1.vPC概述 如下图所示,在传统网络中,出于冗余考虑,汇聚层往往由2台设备构成,一台接入层交换机使用2根上联链路,分别连接汇聚层2台设备. 这种拓扑所带来的问题是:受制于STP,对于同一个VLAN的 ...
- Codeforces Round #619 (Div. 2) B. Motarack's Birthday
Dark is going to attend Motarack's birthday. Dark decided that the gift he is going to give to Motar ...
- ANSYS 非线性材料模型简介1 ---常用弹塑性模型
目录 1. 材料非线性 2. 三个准则 2.1 屈服准则 2.2 流动准则 2.3 强化准则 3. 常用弹塑性模型 3.1 双线性等向强化 3.2 多线性等向强化 3.3 非线性等向强化 3.4 双线 ...
- Update(Stage5):Kudu入门_项目介绍_ CDH搭建
Kudu 导读 什么是 Kudu 操作 Kudu 如何设计 Kudu 的表 Table of Contents 1. 什么是 Kudu 1.1. Kudu 的应用场景 1.2. Kudu 和其它存储工 ...
- Android 短信模块分析(七) MMS数据库定义及结构整理
一. mmssms.db 数据库mmssms.db中表的定义见表4.1至4.18所示: 表4.1 addr(彩信地址) 字段名 类型 描述 备注 _id INTEGER PRIMARY_KEY 主键I ...
- 嵌入式实时程序设计中C/C++代码的优化
1 引言 计算机技术和信息技术的高速发展的今天,计算机和计算机技术大量应用在人们的日常生活中,嵌入式计算机也得到了广泛的应用.嵌入式计算机是指完成一种或多种特定功能的计算机系统,是软硬件的紧密结合体. ...