1.函数的创建和调用
实现代码复用
def 函数名(参数):
函数体
(return xxx)
2.参数传递
形参的位置是函数的定义处
实参是函数的调用处
关键字参数,=左边的变量名称为关键字参数
形参和实参的名称可以不相同
3.函数的返回值
函数没有返回值时,return可以省略
函数的返回值如果是1个,直接返回类型
函数返回多个值时,返回的是一个元组
函数在定义时是否需要返回值视情况而定
4.函数的参数定义
函数定义时,给形参设置默认值,只有与默认值不服的时候才需要传递实参
个数可变的位置参数:
定义函数时,可能无法事先确定传递的位置实参的个数时,使用可变的位置参数,使用* 定义个数可变的位置形参,结果为一个元组
可变的位置参数只能是一个
个数可变的关键字形参:
定义函数时,无法事先确定传递的关键字实参的个数,使用可变的关键字形参,使用** 定义个数可变的关键字形参,结果为一个字典
个数可变的关键字参数也只能有一个
在一个函数的定义过程中,既有个数可变的位置形参,又有个数可变的关键字形参,要求个数可变的位置形参放在个数可变的关键字形参之前
dic={'a':111,'b':22,'c':45}
fun(**dic)#在函数调用时,将字典中的键值对都转换为关键字实参传入
def fun1(a,b=10):#b在函数定义处,所以b是形参,而且进行了赋值,所以b为默认值形参
print('a-',a)
print('b-',b)