Discuss / Python / 关于不是牛仔也会忙例子中的问题

关于不是牛仔也会忙例子中的问题

Topic source

Thepackbacker

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

首先感谢不是牛仔也会忙大佬给予的拓展,但是我也存在和黑色茶杯一样的问题 def lazy_sum(*args): ax = 0 def sum(): for n in args: ax = ax + n return ax return sum 为什么lazy_sum函数下的ax初始值没有存到sum内存中去,ax对于函数sum来说不是lazy_sum函数下的全局变量么

Thepackbacker

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

需要在sum函数里面加上nonlocal ax,就可以运行了。 这句话的意思是把全局的ax变量引入到sun函数里来,表面上我是这么理解的,和JS不一样,JS可以直接使用全局变量


  • 1

Reply