洗礼灵魂,修炼python(25)--自定义函数(6)—从匿名函数进阶话题讲解中解析“函数式编程”

黑猫带你学eMMC协议第1篇:全网最全emmc协议中文详讲,这份学习框架图,你值得拥有!!!(持续更新中...) 黑猫带你学eMMC协议第7篇:全网最全emmc写保护详解(write protect) 黑猫带你学eMMC协议第8篇:emmc可靠写详解(Write Reliability) 黑猫带你学eMMC协议第9篇:emmc的分区配置(partitioning) 黑猫带你学eMMC协议第10篇:eMMC命令队列详解(CMDQ) 黑猫带你学eMMC协议第11篇:eMMC擦除详解(erase/trim/discard/sanitize/secure erase/secure trim…) 黑猫带你学eMMC协议第12篇: 阅读详情

匿名函数进阶

前一章已经说了匿名函数,匿名函数还可以和其他内置函数结合使用

1.map

map():映射器,映射

 

list(map(lambda x:x*2,range(10)))  #把range产生的数字映射进lambda函数里进行计算

结果:

 

 注意:mapmap(function, sequence[, sequence, ...])接受的参数,第一个是函数,第二个,第三个可选参数也是序列

 当第一个参数不为函数时:

 

因为把函数放进去,即代表要进行运算处理,设置为None即表示不做计算

 

说到这,说一下reduce()函数

 

2.reduce

reduce(function, sequence[, initial])看这个参数就知道和map函数很类似对吧?

看例:

有没有发现什么?是的,此时它就是用来计算总数的

还有,reduce的第三个参数是一个基数,用来设置起始值的:

而这些所有计算最关键的都在于传入的函数f,它是设定怎么计算的,比如我要让计算做平方:

  

报错了,提示的是reduce必须给两个参数,我确实给了两个参数,但是还是报错啊?

再结合前面的例子,其实说的是reduce接受的函数必须接受两个参数,并不是指的reduce自身接受两个参数,所以,在使用reduce的时候,必须事先考虑好怎么计算,并不是什么都可以计算的

 

reduce可以用来操作阶乘:

比如5的阶乘:

 

 

那么既然都说到这了,顺便说说filter函数

 

3.filter函数

filter(function or None, sequence):过滤器,筛选为真的参数

例:

再看:

 

python2下:

 

 

python3下:

 

 

 所以,python2和python3下使用filter是不同的,记住就行

 同样,filter函数也可以结合lambda匿名函数来计算:

是不是方便很多?这就是匿名函数的好处

 

 

那么以上的几个函数,其实就是函数式编程的体现(你以为我会真的只是简单对匿名函数的补充?哈哈,这只是套路需要/滑稽)

 

函数式编程

 

1.什么是函数式编程?

又称泛函编程,是一种编程范型。它将计算机运算视为数学上的函数计算,并且避免可变状态以及可变数据

2.哪些是函数式编程:

函数式编程语言最重要的基础就是lambda演算,而且lambda演算的函数可以接受函数当作输入和输出

3.支持函数式编程的语言挺多的,但python支持的函数式编程有限:

1):map(function, sequence[, sequence, ...]):

将函数func作用于给定序列的每个元素,并用一个列表来提供返回值,如果func为None,则直接将后面的参数中序列中的每个元素依次组成一个新的列表,如果元素数量不对应,直接以None代替

 

2):reduce(function, sequence[, initial]):
将二元函数(两个参数)作用于seq序列的元素,每次携带一对(之前的结果以及下一个序列元素),依次将现有的结果和下一个值按照二元函数的计算规则计算,最后得到一个值返回,如果初始值iniial给定,则以这个初始值作为基数和序列中的第一个元素计算,得到结果再与下一个序列元素计算,依次类推得到一个值返回

 

3):filter(function or None, sequence):

调用一个会返回布尔值的func来遍历每个seq中的元素,返回一个使func返回值为True的元素组成的序列

4.函数式编程有如下好处:

1):代码更简洁,符合python宗旨
2):数据集操作,输入和输出都可以一起
3):没有循环体,减少临时变量,逻辑变得简洁
4):代码变成了在描述你要干什么,而不是怎么去干。

 


5实践报告撰写 一 项目流程 明确标准 确定分析目标 寻找分析数据 清洗数据 描述性分析 诊断性分析 提出建议 撰写报告 二 确定分析目标 什么是你感兴趣的? 什么是你熟悉的? 什么是你擅长的? 1 电商零售行业 商品销量分析 价格分析 评价分析 ...... 2 自媒体行业 广告投放力度分析 广告投放回报分析 不同类型的产品分析 ...... 3 金融行业 股票价格分析 信贷业务违约分析 客户画像分析 ...... ... 阅读详情

相关推荐

多模态特征融合方法总结

由于本人的研究是文本、语音和图像三者模态数据的融合,所以针对的是这三种模态的特征融合方法进行总结。 首先,多模态特征融合的方法大体分为三种

华辰烟雨的博客 9万+

实现斐波那契数列的三种方式

首先说说斐波那契数列:从文字上说,斐波那契数列由0和1开始,之后的斐波那契系数就由之前的两数相加,数列形式如下:0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987, 1597, 2584,………………在数学上,是以递归的方法来定义:F(0)=0F(1)=1F(n)= F(n-1)+ F(n-2) 实现需求:输入序号n返...

weixin_33693070的博客 220

最近爆火的 Ontology 本体是什么?一文看懂基础概念 + 落地实操

1993 Tom Gruber原版定义:本体是对领域概念化模型的显式形式化规范。1998 Studer完善通用定义:本体是共享、明确、形式化的领域概念模型规范。大白话翻译:本体就是机器能看懂的行业词典+业务规则手册。数据库只管存数据,本体只管定规则,知识图谱是规则+数据结合体。区别于普通开源本体工具,这款国产商用本体平台核心优势:业务沙盘推演、可控业务数据写回、全链路字段级数据血缘审计,适配企业生产级业务落地。

驽马不舍 364

洗礼灵魂,修炼python(25)--自定义函数(6)—从匿名函数进阶话题讲解中解析“函数式编程”...

匿名函数进阶 前一章已经说了匿名函数,匿名函数还可以和其他内置函数结合使用 1.map map():映射器,映射 list(map(lambda x:x*2,range(10))) #把range产生的数字映射进lambda函数里进行计算 结果: 注意:mapmap(function, sequence[, sequence, ...])接受的...

dingyu6453的博客 133

hcaptcha-challenger:基于本地AI模型自动破解验证码的工程实践

验证码作为区分人类与机器的经典安全机制,其核心原理是通过图像识别、行为分析等交互式挑战来阻挡自动化程序。传统绕过方法依赖第三方打码平台或脚本,存在成本高、稳定性差的问题。随着多模态大语言模型和计算机视觉技术的发展,本地化AI求解成为新的技术方向,它通过集成YOLO、ResNet等模型,在本地完成图像语义理解,实现了高隐私、低成本、可进化的验证码自动化解决方案。这种范式尤其适用于需要大规模稳定处理网页交互的场景,如电商数据采集和社交媒体管理。hcaptcha-challenger项目正是这一理念的工程实践,它

weixin_42587866的博客 1025

基于Llama 3搭建中文版(Llama3-Chinese-Chat)大模型对话聊天机器人

前面两篇博文,我们在笔记本部署了Llama 3 8B大模型,使用Ollama搭建了基于Web 可视化对话机器人。在使用过程中,大模型经常出现中文问题英文回答的问题。本博文就用Llama3-Chinese-Chat微调模型来解决这个问题……

老牛啊 9238

洗礼灵魂,修炼python(23)--自定义函数(4)—闭包进阶问题—>报错UnboundLocalError: local variable 'x' referenced before assign

闭包(lexical closure)什么是闭包前面已经说过了,但是由于遗留问题,所以单独作为一个章节详解讲解下不多说,看例子:def funx(x): def funy(y): return x*y #此时的funy函数对外层funx函数的变量调用,则称为闭包 return funy 结果:>>> i=funx(4) >>&g...

app安全逆向、移动开发、tls/ja3、爬虫、反爬 2721

YOLOv8的Anchor-Free革新:从中心点预测到动态IoU匹配的全面解析

本文深入解析了YOLOv8采用Anchor-Free(无锚框)设计的核心优势与实现机制。通过摒弃预设锚框,模型直接预测目标中心点与宽高,结合解耦头、动态IoU匹配及Varifocal Loss等创新,显著简化了训练流程并提升了检测精度,尤其在小目标检测和模型泛化能力上表现突出。

weixin_29094301的博客 356

洗礼灵魂,修炼python(10)--有趣的判断分支+从实例中掌握循环语句

所有的编程语言里都有判断语句和循环语句。判断语句则是用来分支程序流程的循环语句则是为了实现一个效果,让程序的规律性的重复操作不用说,分支和循环自然在python里也是有的一,条件判断:if,if……else1.在python里if可以单独出现,也可以和else配套出现,但是else不能单独出现这里则要提到一个在编程里一个共有的特性:悬挂else:即出现多余或者不和if匹配的else,就叫悬挂els...

app安全逆向、移动开发、tls/ja3、爬虫、反爬 794

halcon第二讲:焊点提取

本文要完成的任务是将下图中焊点提取出来,对应于halcon例程Blob分析中的ball.hdev。 dev_open_window (0, 0, 512, 512, 'black', WindowHandle) read_image (Image, 'die_03.png') disp_continue_message (WindowHandle, 'black', 'true') sto...

qq_24946843的博客 7175

有限元之有限元空间的构造

主要介绍有限元的空间构造方法。

欢迎各位大佬光临“寒舍”!请多多指点,共同进步! 762

洗礼灵魂,修炼python(14)--模块decimal, fractions,operator,collections以及精度介绍

decimal1.作用:用于浮点数计算。相比内置的二进制浮点数实现 float这个类型有助于 金融应用和其它需要精确十进制表达的场合,控制精度,控制舍入以适应法律或者规定要求,确保十进制数位精度,或者用户希望计算结果与手算相符的场合。Decimal 重现了手工的数学运算,这就确保了二进制浮点数无法精确保有的数据精度。 高精度使 Decimal 可以执行二进制浮点数无法进行的模运算和等值测试2.函数...

app安全逆向、移动开发、tls/ja3、爬虫、反爬 644

【MATLAB例程】三维下的IMM(交互式多模型),模型使用CV(匀速)和CA(匀加速),滤波使用EKF。附完整代码

CV模型:状态包含位置、速度和零加速度(9维状态),状态转移矩阵忽略加速度项CA模型:完整包含位置、速度和加速度(9维状态),状态转移矩阵包含二次项过程噪声矩阵Q分别根据两种模型的运动特性推导。

985工科博士毕业,专攻定位、导航和滤波等算法研究。从业10年,主要使用MATLAB 560

洗礼灵魂,修炼python(1)--python简介

首先,本人也是刚接触python短短几个月,没有老鸟的经验和技能,大佬勿喷,以下所有皆是本人对python的理解 python,是一种解释型(高级)的,面向对象的,带有动态语义的高级程序设计的开源语言。1989年,Guido von Rossum(荷兰人)人称龟叔,他在圣诞节时因为无聊而开发出来的,详细的python发展史介绍可以百度或Google,已经很多了,不再赘述。 python是从20

app安全逆向、移动开发、tls/ja3、爬虫、反爬 592

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

洗礼灵魂,修炼python(7)--元组,集合,不可变集合

前面已经把列表的基本用法讲解完接着讲python的几大核心之——元组(tuple)1.什么是元组?类似列表,但为不可变对象,之前提到列表是可变对象,所谓可变对象就是支持原处修改,并且在修改前后对应的内存空间里的id依然不变,而不可变对象就是不支持原处修改,得重新赋值才行,但在重新赋值的时候,内存ID已经发生改变。元组的特征是什么呢?下面会解释!2.创建元组的两种方式:注意:元组的特征是()没错,但...

app安全逆向、移动开发、tls/ja3、爬虫、反爬 520

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

洗礼灵魂,修炼python(15)--列表进阶话题—>列表解析/列表生成器

是的,我是想到什么知识点就说什么,没有固定的主题,我的标题都是在写完博客再给的。本篇博文说说列表进阶话题。其实列表应该是比较熟悉的了,而毫不夸张的说,在实际的开发中,列表也是使用的最多的,以后你会体会到我说的这句话的。列表解析1.什么是列表解析:根据已有列表,高效生成新列表的方式,还有另一个叫法是叫列表推导式2.作用:列表解析是python迭代机制的一种应用,它常用于实现创建新的列表,因此要放置在...

app安全逆向、移动开发、tls/ja3、爬虫、反爬 512

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

洗礼灵魂,修炼python(35)--面向对象编程(5)—多重继承,组合

多重继承关于继承在上一篇博文已经说过了,怎么继承相信你也懂了。那么进入进阶话题,多重继承1.什么是多重继承继承的概念你清楚,那么多重继承就简单了。我的理解就是子类继承多个基类2.怎么多重继承定义多个基类,然后子类定义时继承多个基类,这就是多重继承。例1: 其实就和前面的一般继承是一样的对吧?就只是传入的基类由一个成了两个或多个而已 例2:定义一个儿子继承父母特征的子类class Human: ...

app安全逆向、移动开发、tls/ja3、爬虫、反爬 494

洗礼灵魂,修炼python(19)--文件I/O操作,linecache,fileinput模块

文件I/O操作1.什么是文件I/O操作首先I/O(input/output),即输入/输出端口,然后文件,大家应该都是是什么,一个数据,一个txt或者html文档就是一个文件。文件操作就是对文件进行读写删除等的操作。文件I/O操作,个人理解,就是与用户有交互式的文件操作,换句话就是读写操作文件也是一个可迭代对象2.有哪些操作:1):I/O操作:raw_input函数,input函数即可以进行I/O...

app安全逆向、移动开发、tls/ja3、爬虫、反爬 478

洗礼灵魂,修炼python(40)--面向对象编程(10)—定制魔法方法+time模块

定制魔法方法1.什么是定制魔法方法首先定制是什么意思呢?其实就是自定义了,根据我们想要的要求来自定义。而在python中,其实那些所谓的内置函数,内置方法,内置属性之类的其实也是自定义出来的,不过是龟数开发python时已经给出了,已经自带了基本能想到的功能都带有了,换句话就是已经给我们事先定义好了,要用的话,直接拿来就用就是,不需要我们自己再去定义。定制魔法方法就是自定义魔法方法了。但是必须遵循...

app安全逆向、移动开发、tls/ja3、爬虫、反爬 460

洗礼灵魂,修炼python(3)--从一个简单的print代码揭露编码问题,运行原理和语法习惯

前期工作已经准备好后,可以打开IDE编辑器了,你可以选择python自带的IDLE,也可以选择第三方的,这里我使用pycharm——一个专门为python而生的IDE按照惯例,第一个python代码打印一个所有开发语言里入门必学“hello,world”?no,你错了,我偏不 第一行是编码,utf-8这是国际使用标准,如果我不加的话,很容易出错第二行print(打印的意思)语句,是python的关...

app安全逆向、移动开发、tls/ja3、爬虫、反爬 449

洗礼灵魂,修炼python(18)--温故加知新

类型转换:1.str(),repr(),format():将非字符串数据转换为字符串str():对象序列化的结果,相当于print输出repr():程序中某个对象精确值format():利用特定格式转换为字符串,format函数用法见后面2.int():转为整数形int函数也可以使用进制:(这个在前面已经提到过的)  Int转换类型并给定进制的方法,并不是都可行: 3.complex():转换为复...

app安全逆向、移动开发、tls/ja3、爬虫、反爬 447

洗礼灵魂,修炼python(21)--自定义函数(2)—函数文档,doctest模块,形参,实参,默认参数,关键字参数,收集参数,位置参数

函数文档1.什么是函数文档:就是放在函数体之前的一段说明,其本身是一段字符串,一个完整的函数需要带有函数文档,这样利于他人阅读,方便理解此函数的作用,能做什么运算2.怎么查看函数文档:function.__doc__   注意:不加小括号3.例:你可能会想,假如我不传入参数能直接打印函数文档吗?测试一下就知道:结果是可以的接着想,前面说不能带小括号,我确认一下是不是真的不能带小括号呢:果然是不行的...

app安全逆向、移动开发、tls/ja3、爬虫、反爬 434

洗礼灵魂,修炼python(8)--高效的字典

python几大核心之——字典(dict)1.什么是字典学生时代都用过字典吧?通过这个字的读音或者偏旁就能用字典查到其相关信息,词性,意思,组词,造句,还有在什么场合下用这个字等等的。在python中的这个字典,其实原理是一样的,当然,python里的这个字典肯定不是用来查字的,是用来查我们需要的数据的,不过,如果你真要用python字典来查哪个字也是可以的,通过python的网络爬虫来查字就行,...

app安全逆向、移动开发、tls/ja3、爬虫、反爬 410

洗礼灵魂,修炼python(9)--灵性的字符串

python几大核心之——字符串1.什么是字符串其实前面说到数据类型时说过了,就是带有引号的参数,“”引号内的一切东西就是字符串,字符串又叫文本。2.创建字符串的两种方式:3.字符串的方法: python2:python3:同样的,不同版本里字符串的方法还是很多不一样,老套路,我还是只解析常用的:capitalize,casefold.center,count,decode,encode,ends...

app安全逆向、移动开发、tls/ja3、爬虫、反爬 405

洗礼灵魂,修炼python(5)--python操作符,内置函数

 前面提到了BIF(内置函数)这个概念,什么是内置函数,就是python已经定义好的函数,不需要人为再自己定义,直接拿来就可以用的函数,那么都有哪些BIF呢?可以在交互式界面(IDLE)输入这段代码,注意是两边都是双下划线dir(__builtins__)  则可以查看不同python版本都有哪些BIF就看这些就能很明显的看出python3和python2还是有很多区别的,想看哪个BIF的用法就直...

app安全逆向、移动开发、tls/ja3、爬虫、反爬 402

AI全栈实战 | 3.9-01 爬虫入门:requests 加 BeautifulSoup 三分钟跑通,但 90% 的人栽在这 4 个“礼貌“问题上

⚠️:本文内容仅用于。请遵守目标站点的服务条款与相关法律法规,不得对目标服务造成负担,不得采集、传播个人隐私数据。技术是中性的,边界在你手里。爬虫的入门技术(requests 发请求 + BeautifulSoup 解析)三分钟就能学会。真正区分"会用爬虫"和"会做爬虫的人"的,是这篇我们跑通"请求→解析→存储"的最小闭环,然后重点把"合规与礼貌"这根弦给你绷上。

源码获取 | 运行部署 | 定制二开修改,如果回复不及时请耐心等待,请见谅。 363
上一篇: 洗礼灵魂,修炼python(24)--自定义函数(5)—匿名函数lambda
下一篇: 洗礼灵魂,修炼python(26)--编程核心之“递归”
geekbyte.
博客等级 码龄11年 308粉丝 75原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值