Python 函数:函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段。
****************************
函数的定义:
def functionname():
函数体
******************************************
函数的定义注意点
函数代码块以 def 关键词开头,后接函数标识符名称和圆括号()。
任何传入参数和自变量必须放在圆括号中间。圆括号之间可以用于定义参数。
函数的第一行语句可以选择性地使用文档字符串—用于存放函数说明。
函数内容以冒号起始,并且缩进。
return [表达式] 结束函数,选择性地返回一个值给调用方。
不带表达式的return相当于返回 None。
************************************************************************************
函数的参数传参分为:
1.位置参数
2.可变参数:
3.默认值参数:
4.关键字参数:(**kw)
5.命名关键字参数:(*,name ,age ,height)
6.位置参数在可变参数后面
********************************************************************************************************************
函数的多种参数类型传递混合使用:
多种参数传递的顺序是 位置传递, 可变参数传递, 默认值参数传递,命名关键字参数, 关键字参数
在有可变参数的时候,命名关键字参数(*,)必须省略
关键字参数必须在最后
位置参数一定要在最前面
默认参数一定在关键字参数前面
可变参数必须在 命名关键字前面
**************************************************************************************************************************************
变量的作用域:
全局变量:全局变量可以在整个程序范围内访问
局部变量:局部变量只能在其被声明的函数内部访问
函数内部定义的变量 ------->>>>>>局部变量:作用域和生存周期仅在从定义开始到函数结束
定义全局变量:global加变量名字
************************************************************************************************************************
调用:(递归调用)
在函数内调用函数本身
1.找到终止条件
2.找到所要递归的条件
*******************************************************************************
匿名函数:
lambda:(适合函数功能简洁的)
****************************************************
迭代:给定一个list或者是turple可以通过for循环来遍历的这种遍历我们称之为迭代。
collections:
Iterable:生成器
isinstnce判断类型的
能用for 循环的是 Iterable
生成器:generator
迭代器:Iterator
next()得到成员的generator
可迭代:Iterable
能用for 循环遍历的 str
list
tuple dict set generator
range
collections模块中定义的Iterator 和Iterable
yalid
高阶函数(函数为参数):map(统一操作) sorted(排序)
map() reduce (累加累成) filter过滤
装饰器:为了修饰函数,不改变函数功能的情况下,修饰函数
闭包:函数内有一个内嵌函数,