def 函数名(): pass
def f(): pass
def f(x): print(x)
def f(): print()
函数名()
1.return能够返回值
2.return能够终止函数
3.return能够返回多个值,用元组返回python
从左到右依次接收位置实参编程
具备默认值,必须放在位置形参后面闭包
从左到右依次传值给位置形参app
按照形参名传值,必须在位置实参后面函数
接收多余位置实参,用元组接收code
打散可迭代对象,看成位置实参传给形参对象
def func(): pass
f1 = func
lt = [func]
def f2(): return func f3 = f2()
def f2(func): pass f2(func)
def f1(): def f2(): pass
内置函数递归
除了内置和局部,剩下的都是全局索引
函数内部的作用域
内置→全局→局部
当前位置:局部→全局→内置→报错
全局与局部没有联系
内局部与外局部没有联系
让全局与局部进行转换
让内局部与外局部进行转换
def a(x): def b(): print(x) return b c = a(100) c()
1.本质就是函数
2.不修改源代码
3.不改变调用方式
def deco(func): def wrapper(*args,**kwargs): res = func(*args,**kwargs) return res return wrapper @deco def index() pass
含有iter方法的 → 除了数字
含有iter和next方法的 → 只有文件
g = (i for i in range(10) print(next(g)) ##g.__next__()
含有yield的函数
1.暂停函数
2.一个next能够拿到一个yield值
函数调用函数自己,要有退出条件
lambda 参数:返回值
enumerate 获取索引+值
相似流水线