出现UnboundLocalError: local variable 'a' referenced before assignment异常的情况与解决方法

出现UnboundLocalError: local variable ‘a’ referenced before assignment异常的情况与解决方法
字面意思:局部变量赋值前被引用
原因:局部变量与全局变量同名
例:

a = 1
def func():
    a += 1
    print(a)
func()

 

 

 

 解决方法:
1.使局部变量与全局变量不同名

a = 1
def func():
    b = a +1
    print(b)
func()

2.使用global关键字

a = 1
def func():
    global a
    a += 1
    print(a)
func()

 

posted @ 2020-02-28 08:14  sgggr  阅读(3580)  评论(0编辑  收藏  举报