python的全局变量玩法还挺特别的

global g_arr

def add():

	#global g_arr

	g_arr = []

	g_arr.append(1)

add()

print g_arr #你将收获一个NameError错误

############################

def add2():

	global g_arr

	g_arr = []

	g_arr.append(1)

print g_arr #ok,这是一个数组了



#简单的说虽说你声音为全局变量,但是,在函数内部你也得再次声音,这应该是作为命名空间的补充吧

  查一下资料http://woodpecker.org.cn/diveintopython/html_processing/locals_and_globals.html

原来,可以理解为所有的变量都是一个字典里面的值,甚至可以遍历

if __name__ == "__main__":

    for k, v in globals().items():

        print k, "=", v

 

你可能感兴趣的:(python)