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
........