Python基础:局部变量与全局变量的作用域及Global关键字详解
本文详细解析Python中局部变量与全局变量的定义、作用域及交互规则。通过代码示例说明不同函数间局部变量的独立性,以及全局变量在函数内的访问与修改机制。重点讲解使用Global关键字修改全局变量的必要性,并演示局部变量与全局变量同名时的优先级处理,帮助开发者掌握变量作用域的核心概念。
四种基本的函数类型

局部变量是指在函数内部定义的变量,其作用域严格限制在函数内部。
不同的函数可以定义名称相同的局部变量,它们各自独立使用,互不影响。
局部变量的主要作用是临时保存数据,通过在函数中定义来实现数据的存储与处理。
全局变量的作用域覆盖整个程序,可在程序的任何位置访问。
若在函数内部试图修改全局变量的值,必须使用Global关键字进行声明,否则仅会创建一个新的局部变量。
局部变量
def printInfo():
name='peter' ##局部变量,只作用于printInfo函数,函数体之外无法使用
print('name')
pass
def TestMethod():
print(name)
pass
# TestMethod()
printInfo()

pro='计算机信息管理' #一个全局变量,作用域的范围不同
def printInfo():
name='peter' ##局部变量,只作用于printInfo函数,函数体之外无法使用
print('{}.{}'.format(name,pro))
pass
def TestMethod():
name='王保保'
print(name)
pass
# TestMethod()
printInfo()

pro='计算机信息管理'
name='卢卢卢' #全局变量与局部变量冲突时,优先使用局部变量,局部变量不存在时,使用全局变量
def printInfo():
name='peter' ##局部变量,只作用于printInfo函数,函数体之外无法使用
print('{}.{}'.format(name,pro))
pass
def TestMethod():
name='王保保'
print(name)
pass
# TestMethod()
printInfo()

pro='计算机信息管理'
name='卢卢卢'
def printInfo():
name='peter' ##局部变量,只作用于printInfo函数,函数体之外无法使用
print('{}.{}'.format(name,pro))
pass
def TestMethod():
name='王保保'
print(name)
pass
def changeGlobal():
'''
要修改全局变量
:return:
'''
pro='市场营销'
pass
changeGlobal()
print(pro) ##检测是否被修改 未被修改

pro='计算机信息管理'
name='卢卢卢'
def printInfo():
name='peter' ##局部变量,只作用于printInfo函数,函数体之外无法使用
print('{}.{}'.format(name,pro))
pass
def TestMethod():
name='王保保'
print(name)
pass
def changeGlobal():
'''
要修改全局变量
:return:
'''
global pro
pro='市场营销'
pass
changeGlobal()
print(pro) ##检测是否被修改 已被修改

总结
本文到此结束,希望能为读者提供有益的帮助,欢迎继续关注本站获取更多技术内容!
本站声明
本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。













