函数参数,可以自动根据名称来匹配
def print_info(name,age):
print("名字",name)
print("年龄",age)
return
print_info(age = 25,name = "Oliva")
参数可变
def printinfo(arg1,*vartuple):
print("输出")
print(arg1)
print("输出")
for var in vartuple:
print(var)
return
printinfo(10,11,12,13,14)
带俩个**
参数会以字典的形式导入
def printinfo2(arg1,**vardict):
print("输出:")
print(arg1)
print(vardict)
printinfo2(1,a=2,b=3)
# 如果单独出现星号 * 后的参数必须用关键字传入。
匿名函数
sum = lambda arg1,arg2:arg1+arg2
print("相加的值:",sum(10,20))
全局变量 局部变量
total = 0;
def sum(arg1,arg2):
total = arg1+ arg2
print("函数内部的局部变量:",total)
return total
sum(10,20)
print("函数外是全局变量",total)
当局部作用域中需要改变外部作用域中的变量
需要使用global nonlocal 关键字
num =1
def fun1():
global num
print(num)
num = 123
print(num)
fun1()
print(num)
修改嵌套作用域
def outer():
num =10
def inner():
nonlocal num
num = 100
print(num)
inner()
print(num)
outer()