UnboundLocalError: local vaiable 'XX' reference...

示例以下: python

i = 9 函数

print(id(i)) spa

def test(): test

    print(id(i)) 变量

以上的代码运行是ok的,可是将test函数改成以下: 引用

def test(): co

    print(id(i)) background

    i = 10

将会引起 UnboundLocalError: local vaiable 'i' referenced before assignment 错误

在python的函数中和全局同名的变量,若是你修改变量的值就会变成局部变量,在修改以前对该变量的引用天然就会出现没定义这样的错误了,若是肯定要引用全局变量,而且要对它修改,必须加上global关键字。可是反过来讲,把全局变量改来改去我的以为很不靠谱。 ab

相关文章
相关标签/搜索