闭包的二次学习

def func():  # 定义函数func()
    a = 10
    i = 0

    def inner():  # 定义函数inner()
        nonlocal a, i
        a = a + 1
        i = i + 1
        print("第%s次执行所得结果是:" % i, end="")
        return a  # 函数inner的返回值

    return inner  # 函数func的返回值


ret = func()

r1 = ret()
print(r1)
r2 = ret()
print(r2)

 

posted @ 2022-06-01 13:04  acwecc  阅读(25)  评论(0)    收藏  举报