全局变量在第一层级,作用于整个代码块;局部变量只作用于所在函数域;局部变量变成全局变量需声明global(不建议使用,不便于复杂程序调试);
school ="Oldboy edu."#全局变量
def change_name(name):
global school #将函数中的局部变量改成全局变量
school="Mage Linux"#局部变量
print("before change",name,school)
name ="Alex li"#局部变量,只在函数中生效,这个函数(change_name)就是这个变量(name)的作用域
print("after change",name)
name = 'alex'
change_name(name)
print(name,school)
注释掉全部代码:ctrl+?
school ="oldboy edu."
names =["alex","jack","Rain"]
def change_name():
names[0] ="金角大王"#列表、字典、集合和类都可以在局部变量中改,字符串和整数不能改
print("inside func",names)
change_name()
print(names)
