Python基础语法 - 函数
函数就是对实现某一特定功能的代码的封装。
目的:
- 将多段代码分块;
- 实现一次编写代码,功能多次使用。
1. 函数的分类
函数就是实现某一特定功能的代码的封装。根据创造者对函数进行分类,分为两种:系统函数、自定义函数
-
系统函数:由Python创建好的函数。例如:print、input、type、max、min、id等
-
自定义函数:由程序员自己创建的函数
2. 定义函数
语法:
def 函数名(形参列表):
函数说明文档
函数体
return 返回值
说明:
-
def 关键字,固定写法;
-
函数名 由程序员自己命名,是标识符,不能是关键字
-
() 固定写法
-
形参列表 以’变量名1,变量名2,…'格式存在,这的每一个变量就是一个形参,如果不需要形参,括号里面什么都不用写
将函数外部的数据传递到函数呢哦不
需不需要形参就看实现函数的功能需不需要额外的数据
-
函数说明文档
定义函数的基本流程
- 确定函数功能;
- 根据函数功能确定函数名;
- 确定形参(要不要?要多少?)
- 实现函数功能(将形参当成对应的数据来使用);
- 确定函数返回值;
- 写函数说明文档。
3. 调用函数
定义函数时不会执行函数体,调用数据才会执行函数体,调用多少次就执行多少次
语法:函数名(实参列表)
说明:
- 函数名:需要使用的函数的名字(系统函数或自定义函数)
- () :固定写法
- 实参列表:多个数据用逗号隔开(任何有结果的表达式),根据定义函数时是否定义了形参列表,决定是否需要实参列表。原则上,定义函数时有多少个形参,调用函数就需要多少个实参。
函数调用过程
当代码执行到函数调用表达式的时候:
- 回到函数定义的位置,用实参列表给形参列表赋值(没有形参则不赋值);
- 执行函数体;
- 确定函数返回值;
- 回到函数调用的位置,接着往后执行。
返回值:
将函数内部的数据传递到函数外部
语法:return 需要返回的数据(需要从函数内部传递到函数外部的数据)
获取返回值:获取函数调用表达式的值,就是获取函数的返回值。(函数调用表达式的值就是函数的表达式)
返回值能做的事情,函数调用表达式都能做
关键字:return
- 确定函数返回值,将函数内部的数据传递到函数外部。
- 提前结束函数,在执行函数体时,如果遇到return,函数直接结束。
返回值类型说明:
4. 函数的参数
-
位置参数和关键字参数
在调用函数的时候根据实参提供方式,分为位置参数和关键字参数
- 位置参数:直接将多个数据用逗号隔开,让实参和形参从位置上一一对应。
- 关键字参数:以 形参 = 实参 的形式传参
- 位置参数和关键字参数混用
-
参数默认值
在定义函数的,可以通过 ‘形参 = 数据’ 给参数赋默认值。调用函数的时候有默认值的参数可以不用赋值。
定义函数的时候可以只给部分参数赋默认值,那么没有默认值的参数必须在有默认值的参数的前面
-
参数类型说明:
- 无默认值参数:类型名
- 参数赋默认值
-
返回值类型说明: 类型名
-
不定长参数:一个形参可以同时接受多个实参
-
在形参前加 *,带 * 的参数会变成一个元组,接收到的实参会变成元组中的元素;
注:如果定长参数在不定长参数后面,定长参数在传参时,必须使用关键字参数
-
*(x, , y) :定义函数时,如果参数中有一个独立的 * ,它的作用是让你在调用这个函数的时候,的后面使用关键字参数传参。
-
(**x) :带 * *的参数会变成一个字典,接受到的实参会变成字典
-