函数的定义
函数:对某一个特定的功能或者代码块进行封装,在需要使用该功能的时候直接调用即可
定义:
def 函数的名字():
被封装的功能或者代码块->函数体
调用:
函数的名字()
好处:让程序更加简洁,代码更加合理
参数的概述
分类:形参和实参
形参
在函数声明的时候,需要准备一些变量来接收信息
分类
-
位置参数,按照位置一个一个声明变量
-
默认值参数,在函数声明的时候给变量一个默认值,如果实参不传递信息,此时默认值生效,否则就不生效
(位置参数和默认值参数同时使用时,默认值参数要放到后面) -
动态传参
-
*args ,表示接收所有位置参数的动态传参
def 函数名(*参数名)
*表示位置参数的动态传参,*接收到的值会被统一放在一个元组里面 -
**kwargs ,表示接受所有关键字的动态传参
def 函数名(**参数名)
**表示接受关键字的动态传参,接收到的所有参数都会被处理成字典
实参
实际在调用中传递的信息
分类
- 位置参数:按照位置进行传递参数
- 关键字参数:按照参数的名字进行传递参数
- 混合参数:位置参数和关键字参数混合使用,顺序:位置参数放前面,关键字参数放后面,否则报错;实参在执行的时候,必须要保障形参有数据。
例子:请用函数编写一个计算器,能计算加减乘除四则运算
# 请用函数编写一个计算器,能计算加减乘除四则运算
def jisuan(a, opt, b):
if opt == "+":
print(a + b)
elif opt == "-":
print(a - b)
elif opt == "*":
print(a * b)
elif opt == "/":
print(a / b)
else:
print("出错了!!")
jisuan(222, "/", 111)
顺序:位置>*args>默认值>***kwargs
函数的返回值
返回值:函数执行之后,会给调用方一个结果,这个结果就是返回值
关于return:
函数只要执行到了return,函数就会立即停止并返回内容,函数内的return的后续的代码不会执行
- 如果函数内没有return,此时外界收到的是None
- 如果写了return:
- 只写了return,后面不跟数据,此时接收到的依旧是None
- return 值,此时表示函数有一个返回值
- return 值1,值2,值3…,此时函数有多个返回值,外界收到的是元祖,并且,该元祖内存放所有的返回值