1.1.定义函数
自定义函数的语法格式:
1.以英文半角冒号结尾
2.缩进(在Python中推荐采用4个半角空格)
3.如果没有数据返回,则可以省略return语句
由于定义函数时的参数不是实际数据,会在调用函数时传递给它们试剂数据,所以我们称定义函数时的参数为形式参数,简称形参。称调用函数时传递的实际数据为实际参数,简称实参。
1.2.调用函数
1.2.1.使用位置参数调用函数
在调用函数时传递的实参与定义函数时的顺序一致,这是调用函数的基本形式。
用python指令运行文件
1.2.2.使用关键字参数调用函数
在调用函数时可以采用“关键字=实参”的形式,其中,关键字的名称就是定义函数函数时形参的名称。
实参不再受形参的顺序限制。
1.3.参数的默认值
函数重载会增加代码量,所以在Python中没有函数重载的概念,而是为函数的参数提供默认值实现。
拿铁为提供的参数,而卡布奇诺为默认值,在没有提供参数时,则返回默认值。
1.4.可变参数
1.4.1.基于元组的可变参数(*可变参数)
*可变参数在函数中被组装成一个元组。
1.4.2.基于字典的可变参数(**可变参数)
**可变参数在函数中被组装成一个字典
1.5.函数中变量的作用域
变量可以在模块中创建,作用域(变量的有效范围)是整个模块,被称为全局变量。变量也可以在函数中创建,在默认情况下作用域是整个函数,被称为局部变量。
1.6.函数类型
python中的任意一个函数都有数据类型,这种数据类型是function,被称为函数类型。
1.6.1.理解函数类型
函数类型的数据与其他类型的数据是一样的,任意类型的数据都可以作为函数返回值使用,还可以作为函数常熟使用。因此,一个函数可以作为另一个函数返回值使用,也可以作为另一个函数参数使用。
1.6.2.过滤函数filter()
在python在定义了一些用于数据处理的函数,如filter()和map()等。
filter()函数用于对容器中的元素进行过滤处理。
filter()函数的语法如下:
filter(function,iterable)
参数function是一个提供过滤条件的函数,返回布尔值。
参数iterable是容器类型的数据。
1.6.3.映射函数map()
map()函数用于对容器中的元素进行映射(或变换)。
map()函数的语法如下:
map(function,iterable)
参数function是一个提供变换规则的函数,返回变换之后的元素。
参数iterable是容器类型的数据。
1.7.lambda函数
在python中使用lambda关键字定义匿名函数。lambda关键字定义的函数也被称为lambda()函数。
定义lambda()函数的语法如下 lambda 参数列表:lambda体
“参数列表”与函数的参数列表是一样的,但不需要用小括号括起来。
lambda()函数与有名称的函数一样,都是函数类型,所以add()和sub()函数可以被lambda()函数替代。