Python 全局变量

报错信息:UnboundLocalError: local variable referenced before assignment

在函数内部修改全局变量时报错。

因为:在python里,如果在函数内部试图去修改一个全局变量,那么实际上的操作是 Python会创建一个新的名字一模一样的局部变量,并且在函数内部屏蔽(shadow)掉这个全局变量(为了保护),但是出了这个函数并不改变全局变量的值。

解决方法:代码如下所示。

epoch = 0
def Mnist(x1, x2, x3, x4, x5, x6):
    f = [] #空列表
    global epoch
    epoch += 1
  ........

 

posted @ 2019-06-01 13:14  爱学英语的程序媛  阅读(330)  评论(0编辑  收藏  举报