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 ...
随机推荐
- CSS-复选框默认样式修改
在css文件中添加如下代码 input[type='checkbox'] { -webkit-appearance: none; background: #fff url('../../static/ ...
- cascadia-code 程序员友好字体
下载地址:https://github.com/microsoft/cascadia-code/releases/download/v1911.21/Cascadia.ttf 下载后右键点击下载的文件 ...
- cglib用法
CGLib动态代理的介绍及用法(单回调.多回调.不处理.固定值.懒加载) 参照: https://blog.csdn.net/difffate/article/details/70552056 前面介 ...
- 创业学习---《如何预判创业可行性》--B-1.预判模块---HHR计划---以太一堂
<如何预判创业可行性>----对创业进行占卜 一,<开始学习> 1,预热思考题: (1)预判一个模式的可行性.你有一个朋友要创业,给你讲了他的创业计划,你帮他判断一下是否靠谱. ...
- Perl 笔记
目录 Perl 学习 常用记录 基础 1. 运行perl 2. 字符串 3. 变量 4. 条件 5. 循环 6. 运算符 7. 时间日期 8. 子程序(函数) 9. 引用 10. 格式化输出 11. ...
- NLP直播-1 词向量与ELMo模型
翻车2次,试水2次,今天在B站终于成功直播了. 人气11万. 主要讲了语言模型.词向量的训练.ELMo模型(深度.双向的LSTM模型) 预训练与词向量 词向量的常见训练方法 深度学习与层次表示 LST ...
- 【PAT甲级】1044 Shopping in Mars (25 分)(前缀和,双指针)
题意: 输入一个正整数N和M(N<=1e5,M<=1e8),接下来输入N个正整数(<=1e3),按照升序输出"i-j",i~j的和等于M或者是最小的大于M的数段. ...
- vue 组件,以及组件的复用
有时候代码的某一模块可能会经常使用到,那么完全可以把这一模块抽取出来,封装为一个组件,哪里需要用到的时候只需把模块调用即可 .参考vue官方 https://cn.vuejs.org/v2/guide ...
- C/C++网络编程7——多进程服务器端之fork函数
通过前面几节的内容,我们已经可以实现基本的C/S结构的程序了,但是当多个客户端同时向服务器端请求服务时,服务器端只能按顺序一个一个的服务,这种情况下,客户端的用户是无法忍受的.所以虚实现并发的服务器端 ...
- 将UIImage转换成圆形图片image
建议写成UIImage分类,如下: .h //变成圆形图片 - (UIImage *)circleImage; .m //变成圆形图片 - (UIImage *)circleImage { // NO ...