Python笔记2
一 函数
函数是什么?
函数的创建
返回值
return 表示把程序流程从被调函数转向主调函数并把表达式的值带回主调函数,实现函数值的返回,返回时可附带一个返回值,由return后面的参数指定。
程序一旦执行到return就会结束当前函数。当函数中没有return时,默认返回值是None.
代码如下:
参数
可变长参数
*args星号操作符之后的形参将作为元组传递给函数,元组保存了所有传递
**kwargs 用于接收0个或者任意个的关键字参数,这里的关键字就是参数名
参数顺序
参数的顺序是位置参数,默认值参数,可变长参数
如果参数有多种类型,应按照以下这个顺序排列:
第一个是位置参数 fun(a)
第二个是默认参数 fun(a,b=1)
第三个是可变参数 fun(a,b=1,*c,**d)
在可变参数中,非关键字参数要在关键字参数前面
函数的优点
二 匿名函数、递归函数与生成器函数
变量作用域
变量的作用域
*在函数中想要对全局变量进行修改,要用到关键字
global
匿名函数
递归函数
程序调用自身的编程技巧称为递归( recursion)。
*递归函数优缺点
递归函数的优点就是定义简单,逻辑清楚。
缺点是递归效率不高,因为每一次调用都有相应的数值存放在栈,而栈的空间是有限的
因此在写函数时候要注意不可无限递归或者递归次数非常大
递归函数
要求输入一个数字表示是第几个数字,正确输出第n个斐波那契数
生成器函数
下次通过生成器对象的__next__()方法、内置函数next()、for循环遍历生成器对象元素或其他方式显式“索要”数据时恢复执行。
生成器–斐波那契