函数
关键字def
1.写法格式
函数名 ():
函数体
#例子如下
func():
函数体
2.函数返回值
关键字return
return的内容返回函数的调用
return下方代码不执行,可以终止函数,不可以终止终止循环
return 返回多个内容的时候是元祖形式
return 没有写返回值的时候是None 不写返回值时也是None
3.参数
形参:是指函数定义中括号里面的参数
实参:函数的调用括号里的是实参
传参:是将实参传递给形参的过程
混合参数:位置参数和关键字参数在一起的
优先级
位置参数>关键字参数
4.三元运算符
变量=条件成立 条件判断 条件不成立 结果
def a(a,b):
return a if a>b else b
print(a(1,2))
5.动态参数
*args是万能位置参数
def func(a,b,*args):
print(a,b,args) #args传递的参数是元祖类型
func(1,2,3,45,['SkyRabbit'])
#结果如下
1 2 (3, 45, ['SkyRabbit'])
def func(a,b,**kwargs,):
print(a,b,kwargs) #args传递的参数是字典类型
func(3,4,args=16,cs=5)
#结果如下
3 4 {'args': 16, 'cs': 5}
位置参数>动态参数>默认参数(关键字参数)>动态关键字参数
万能传参:动态位置参数,动态关键字参数
6.空间
内置空间 例子print() input()
全局空间 在当前py文件需要开辟的空间存放在全局空间
局部空间 函数中开辟的空间就是局部空间
加载顺序
内置空间>全局空间>局部空间
取值顺序
局部空间>全局空间>内置空间
7.作用域
全局作用域:内置空间+全局空间
局部作用域: 局部空间
8.函数嵌套
不管子啊什么位置,只要函数名+()就是调用此函数
函数调用执行后,函数体中开辟的空间就自动销毁了
9.修改变量
global关键字 声明修改,全局变量
nonlocal 关键字 在外层函数中,在修改局部空间的变量值,空间不涉及全局空间,只修改距离它最近一层,直到找到最外层函数.