第七次

第七次
函数下
间接调用函数:
前面调用函数时,使用函数名加参数列表的形式调用。除此之外,还可以将函数名赋值给一个变量,再通过变量名加参数列表的形式间接调用函数
匿名函数:
匿名函数是指没有函数名称的、临时使用的微函数。它可以通过lambda表达式来声明,lambda表达式只可以包含一个表达式,其计算结果可以看作是函数的返回值。虽然lambda表达式不允许包含其他复杂的语句,但在表达式中可以调用其他函数,使用lambda表达式声明匿名函数并赋值给sum,相等于这个函数有了函数名sum。使用lambda表达式声明的匿名函数也可以作为自定义函数的实参,还可以作为内建函数的实参,也可以作为列表或字典的元素
闭包:
函数可以通过return返回一个变量。此外,函数也可以返回另外一个函数名。
将一个函数的定义嵌套到另一个函数中,还有其他的作用,例
在这里插入图片描述
函数f2()中传入一个参数,在函数f1()中对该参数中的元素求和,具体执行过程如图所示。
在这里插入图片描述
如果内层函数引用了外层函数的变量(包括其参数),并且外层函数返回内层函数名,这种函数架构称为闭包。从概念中可以得出,闭包需要满足的三个条件:
内层函数的定义嵌套在外层函数中。
内层函数引用外层函数的变量。
外层函数返回内层函数名。
装饰器:
装饰器本质上还是函数,可以让其他函数在不做任何代码修改的前提下增加额外功能。装饰器除了可以装饰无参数的函数外,还可以装饰有参数的函数
偏函数
函数最重要的一个功能是复用代码,有时在复用已有函数时,可能需要固定其中的部分参数,除了设置默认值参数外,还可以使用变函数(用来固定函数调用时部分或全部参数的函数叫偏函数)
常用的内建函数
在python中,内建函数是被自动加载的,可以随时调用这些函数,不需要定义,极大地简化了编程。
eval()函数
eval()函数用于对动态表达式求值
其中,source是动态表达式的字符串,globls和locals是求值时使用的上下文环境的全局变量和局部变量,如果不指定,则使用当前运行上下文。
exec()函数
exec()函数用于动态语句的执行
compile()函数
compile()函数用于将一个字符串编译为字节代码
map函数( )
程序中经常需要对列表和其他序列中的每个元素进行同一个操作并把其结果集合起来
filter()函数
filter()函数可以对指定序列进行过滤操作其中,function为函数名,他所引用的函数只能接受一个参数,并且返回值是布尔值,sequence为一个序列,filter()函数返回值为迭代对象。
zip函数
zip函数用于将一系列可迭代的对象作为参数,将对象中对应的元素打包成一个元组,然后返回由这些元组成的迭代对象
zip()函数可以接受任何类型的序列,同时也可以有两个以上的参数,但当传入参数的长度不同时,zip()函数以最短序列长度进行截取获得元组。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值