#####全局变量与局部变量######## 1.全局变量:(顶头写,没有任何的缩进),在文件中任何位置都可以调用 2.局部变量:在子程序里定义的变量 ####如果函数内容无global 关键字,优先读取局部变量,无法对全局变量重新赋值。如果没有局部变量,只能读取全局变量。 ----有声明局部变量 def liuxiangyu(): NAME = '刘翔宇' print('我要搞',NAME) liuxiangyu() ------ 无声明局部变量,读取全局变量 NAME = ['SB','刘翔宇'] def liuxiangyu(): # NAME = '刘翔宇' print('我要搞',NAME) liuxiangyu() 但是对于可变类型,可以对内部元素进行操作 如果函数中有global关键字,变量本质上就是全局的那个变量,可读取可赋值 ---无局部变量,直接读取全局变量 NAME = ['SB','刘翔宇'] def liuxiangyu(): global NAME print('我要搞',NAME) liuxiangyu() ---有局部变量,且局部变量在global关键字下方,该局部变量取代全局变量(局部变量在global关键字的上方,报错) NAME = ['SB','刘翔宇'] def liuxiangyu(): global NAME NAME = 'LI'