1,定义函数
def 函数名(参数表):
函数语句
return 发回值
参数和返回值都可以省略
def hello(): print("Xyf 无敌") hello()
2,参数传递
def add(a,b): return a+b print(add('a','b')) #顺序依次传递 print(add(b='a',a='b')) #按形参赋值
def solve(a): a[0]='abc' x=[1,2] solve(x) print(x)
对于可变对象,列表,字典等,若在函数中修改形参,通过共享引用,实参也会变
如果不希望实参改变,可以传递拷贝的列表
def solve(a): a[0]='abc' x=[1,2] solve(x[:]) print(x)
def solve(a=1): #可以为a设置默认值,若调用时未提供实参,则为默认值 a[0]='abc' x=[1,2] solve(x[:]) print(x)
python 允许函数内部嵌套函数
但是内部的函数只允许内部使用
3,lambda函数
定义一些简单的函数
add=lambda a,b:a+b print(add(1,2))
4,函数列表
add=lambda a,b:a+b def solve(a): return a*a d=[add,solve] print(d[0](1,2)) print(d[1](5))
5,函数字典
add=lambda a,b:a+b def solve(a): return a*a d={'求和':add,'平方':solve} print(d['求和'](1,2)) print(d['平方'](5))