2020-10-29

小韩的Python笔记1.1

大家好鸭!我是小韩
在这里插入图片描述
应Python老师要求 发表关于Python博客
首先我是一个菜鸡(基础理论还记不住)
其次次,要记录小菜鸡的成长,有不对的地方欢迎指出虽然可能也没有人看

好了,进入正题
在这里插入图片描述
生成器函数
嘛叫生成器函数呢?就是每次都会生成一个返回值的特殊函数.
yield语句的函数也可以用来创建生成器对象,每次执行到yield语句并返回一个值后会暂停或挂起后面代码的执行。

下次通过生成器对象的_next_()方法、内置函数next()、for循环遍历生成器对象元素或其它方式显示“索要”数据时恢复执行。

来看一个简单的代码;
在这里插入图片描述
斐波那契数列(兔子数列)

def f()
a,b=1,1
while Ture:
	yield a #暂停执行,需要时再产生一个新元素
	a,b=b,a+b #继续生成新元素
a=f()
for i in range(10):
	print(next(a),end='')

这个代码运用的就是生成器函数

高阶函数

满足以下条件之一的函数就是高阶函数
1.函数可以作为参数被传递
2.函数可以作为返回值输出

简单来说就是套娃!!!!!
在这里插入图片描述
好的,大家熟悉的环节 —上代码。

import math #引入math类
def add(x,y,f):
	return f(x)+f(y)
add(4,9,math.sql) #5.0

Python还有内置的高阶函数
map、reduce、filter、sorted、reversed

一、map函数

map()函数接收两个参数,一个是函数,一个是序列,map将传入的函数依次作用到序列的每个元素,并把结果作为新的list(序列对象)返回。
在这里插入图片描述

二、reduce函数

reduce把一个函数作用在一个序列[x1,x2,x3…]上,这个函数必须接收两个参数,reduce把结果继续和序列的下一个元素做累计计算

三、filter函数

Python内建的filter()函数用于过滤序列。
和map()类似,filter()也接收一个函数和一个序列。和map()不同的时,filter()把传入的函数依次作用于每个元素,然后根据返回值是True还是False决定保留还是丢弃该元素。

四、sorted函数

sorted()函数也是一个高阶函数,它还可以接收一个key函数来实现自定义的排序,例如按绝对值大小排序,按照字符串长度排序

今天小韩的笔记到此结束啦!谢谢大家
下周见!各位封校人

在这里插入图片描述

©️2020 CSDN 皮肤主题: 1024 设计师:上身试试 返回首页