Discuss / Python / 关于“加一个nonlocal x的声明”后计算结果的疑问

关于“加一个nonlocal x的声明”后计算结果的疑问

Topic source

为什么第一个直接return x+1 返值后结果为1,1,但是用x+1计算后再返值,每次打印f()的结果不一样呀?

kjhk

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

我的理解是加了nolocal后,内部函数可以调用外部函数的变量,所以在内部函数中这个变量是属于会被记录的变量,内部函数没法初始外部函数的变量


  • 1

Reply