一.函数的作⽤
二.参数
三.返回值
四.数据类型
五.作用域
六.递归
1.基本格式和使用 (Python中, 一切皆引用
参数/值(即形参/实参)的传递也是靠引用来传递的)
定义:def 函数名(参数):
代码1
代码2
...
调用:函数名 ([参数])
说明文档:作用:保存函数解释说明的信息
格式:def 函数名():
""" 函数说明⽂档 """(说明文档只包含函数中第一个三引号的内容, 其他三引号的内容当做普通字符串处理)
函数应用:def sum_num(a, b, c):
return a + b + c
result = sum_num(1, 2, 3)
print(result) # 6
2.参数
2.1模板:
# 定义函数时同时定义了接收⽤户数据的参数a和b,和b是形参
def add_num2(a, b):
result = a + b
print(result)
# 调用参数时传入了真实的数据10和20,真实数据为实参
add_num2(10, 20)
2.2形参:函数定义时书写的参数(⾮真实数据)
2.3实参:函数调⽤时书写的参数(真实数据)
2.4位置参数:形参和实参的"个数"和书写顺序必须⼀致
2.5关键字参数:(调用函数时使用)
key=value
形参和实参的书写"顺序"可以不⼀致
关键字参数"必须"书写在位置参数的后⾯
2.6缺省参数/默认参数:(定义函数时使用)
key=value
如果参数不存在, 使用value值
2.7不定长参数:
*args# 定义函数是使用, 参数会以元祖的方式赋值给args
**kwargs# 定义函数时使用, 参数会以字典的方式传递给kwargs
2.8拆包(变量的个数和序列元素的个数要一致)
a, b = 元祖/列表/字典/集合
将等号右边序列中的元素分别赋值给等号左边的变量
3.返回值
关键字:return 两个作用 一.返回数据 二.结束函数
调用函数, 可以使用变量来接收函数的返回值, 如果没有返回值, 默认是None
返回多个数据的时候,如return a, b,默认是元组类型, 即返回值是(a, b)
return后⾯可以连接列表、元组或字典,用来返回多个值
函数中有多个return, 只执行第一个return
4.数据类型
可变类型: 列表 字典 集合
不可变类型:整形 浮点型 字符串 元祖
5.作用域
全局变量:在函数外部定义, 函数内外都是其作用范围(如果要在函数内部修改全局变量, 需要使用关键字global)
局部变量:在函数内部定义, 作用范围只在函数内部
6.递归:函数在内部⾃⼰调⽤⾃⼰(必须有出⼝(不能无限递归))