Python,内部函数,重新分配外部函数变量

时间:2015-07-02 20:29:26

标签: python

任何人都可以告诉我为什么以下代码错误?
我的猜测是,内部功能以某种方式检测到一个新的'变量声明,(我在内部()的左侧有' x')。
虽然它失败了,因为这个' x'首先出现在右侧。 这是对的吗? 我错误地认为它表现得正常(即增加x的值)。

在任何其他上下文中,可以从内部函数访问x。如果我把x放在左侧,唯一的问题就出现了。

def outer(x):
    def inner():
        x = x + 1
        return x
    return inner()

outer(1)

UnboundLocalError:局部变量' x'在分配前引用

0 个答案:

没有答案
相关问题