Discuss / Python / 对不对?

对不对?

Topic source

落汐21

#1 Created at ... [Delete] [Delete and Lock User]

感觉闭包就是给一个变量初始化外函数后,再次调用该变量就是会进行返回函数和对应的函数那段了,所以如果在外函数里定义一个变量后,该变量就被记住了,比如:

def createCounter(i=0): def counter(): nonlocal i i+=1 return i return counter 其中i变量能被一直记住就是只给它初始化一次,之后都只执行 def counter(): nonlocal i i+=1 return i return counter 这段,而当counterA=createCounter()之后,i变量也跟counterA绑定了,就像是进行一个循环一样,这跟普通的调用函数不一样啊


  • 1

Reply