「这是我参与11月更文挑战的第26天,活动详情查看:2021最后一次更文挑战」
回调
def funa():
print('清水白石厦寒沙')
def funb(fun,flag): #把funa给到fun
if flag == 1:
fun() #这里fun加括号,相当于funa加括号,即fun() = funa()。在上面函数的引用有讲解哦
else:
print(111)
funb(funa,1)
关于那个加括号,深化结合理解下:::
1.嵌套函数
def a():
def b():
print(111)
return b()
a()
2.闭包
def a():
def b():
print(111)
return b
a()()
(4)关键字传参
def wuhan(str): 跟type的功能一样,如果直接传入一个关键字,会告诉python解释器输出他们的类型。
print(str)
return
wuhan(str)
输出为: <class,'str>
(5)匿名函数
python中使用lambda来创建匿名函数。
lambda函数的语法只包含一个语句。
语法规则:lambda 参数:表达式
例如:
函数体: lambda形式:
def wuhan(x): wuhan = lambda x:x+1 #第一个x是形参,后面x+1相当于return x+1
#代码块
return x+1 print(wuhan(3))
print(wuhan(3))
优点:lambda只是一个表达式,函数体比def简单很多。
匿名函数的合理利用能够让那个代码更加简洁。
缺点:lambda表达式中封装有限的逻辑进去。
简单的函数就用lambda来操作。
类似于filter,map等函数里面可以使用匿名函数来处理。例如:filter(lambda x: x>10, li)
老生常谈的一句话,再来加深一遍印象——函数到底是什么&&是为了干啥的?
函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段。
函数能提高应用的模块性,和代码的重复利用率。你已经知道Python提供了许多内建函数,比如print()。但你也可以自己创建函数,这被叫做用户自定义函数。
拓展个知识点:
函数或者方法调用过程中,一般放到if name == 'main'下面
成为主函数的入口;程序的窗口 规范一些
在导包的过程中 if name == 'main'下面的内容不会在导包的这个文件中显示。
if __name__ == '__main__':
print(11)
输出为:
11
到今天,Python函数的笔记也就做完了,这是第一次看书&&听网课做的笔记,可能布局有点潦草,但是内容我感觉还不错,对函数有了很深的印象,继续加油!明天继续学习!!!