python中局部变量的作用域_python-局部变量与全局变量作用域

FOLLOW ME

一、局部变量

局部变量只在函数内生效,这个函数就是这个变量的作用域。

这个变量的作用域只限制在这个函数中。

def change_name(name):

print("before change",name)

name="YUAN"

print("after change",name)

name="Jim"-----局部变量,只在函数内部生效

change_name(name) print(name)

运行结果:

before change Jim

after change YUAN

Jim

[Finished in 0.2s]

二、全局变量

全局变量是在整个程序中都生效的变量

如何在局部变量内部更改全局变量,可以使用global参数更改

school="qinghua"---定义全局变量

def change_name(name):

global school---通过使用global更改局部变量生效

school="beida"

print("before change",name,school)

name="YUAN"

print("after change",name)

name="Jim"

change_name(name)

print(name)

print("school:",school)

运行结果:

before change Jim beida

after change YUAN

Jim

school: beida

[Finished in 0.2s]

三、不允许在函数里边改全局变量

禁止在函数内部改全局变量,否则会引起其它调用该函数的程序出现错误!!!

def change_name():

global name

name="YUAN"

change_name()

print(name)

四、全局变量与局部变量总结

在子程序中定义的变量称为局部变量,在程序的一开始定义的变量称为全局变量。

全局变量作用域是整个程序,局部变量作用域是定义该变量的子程序。

当全局变量与局部变量同名时:

在定义局部变量的子程序时,局部变量起作用;在其它地方全局变量起作用。

你可能感兴趣的:(python中局部变量的作用域)