意见箱
恒创运营部门将仔细参阅您的意见和建议,必要时将通过预留邮箱与您保持联络。感谢您的支持!
意见/建议
提交建议

Python的局部和全局变量分别作用于什么,如何使用

来源:恒创科技 编辑:恒创科技编辑部
2023-12-25 15:22:59
这篇文章主要介绍了Python的局部和全局变量分别作用于什么,如何使用相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Python的局部和全局变量分别作用于什么,如何使用文章都会有所收获,下面我们一起来看看吧。



Python的局部和全局变量分别作用于什么,如何使用

局部变量:在函数中定义的变量,作用域是当前函数,只对当前函数起作用。

全局变量:在代码开头定义的变量,作用域是整段代码,对整段代码起作用。

先看下面的实例, 最后给结论。

name='PythonTab'
deffunc1():
print('mynameis%s'%(name))
name='PythonTab.com'
print('mynameis%s'%(name))
func1()
print(name)

输出结果:

mynameisPythonTab
mynameisPythonTab.com
default


结论:当全局变量和局部变量相同时,函数内部优先使用局部变量, 如果没有局部变量则使用全局变量

如果我们想在函数内部,使局部变量对全局变量产生作用,那么我们可以在函数中使用gloabl,下面我们来看

name='default'
deffunc2():
globalname
name='PythonTab.com'
print(name)
func2()
print(name)

输出结果:

PythonTab.com
PythonTab.com


我们再来看

nameList=['Python','Tab','.com']
deffunc3():
nameList[0]='python'
func3()
print(nameList)

输出结果:

['python','Tab','.com']
nameList=['Python','Tab','.com']
deffunc4():
nameList=[]
func4()
print(nameList)

输出结果:

['Python','Tab','.com']


这里可以看到nameList这个全局变量改变了,函数内部没有调用global,却改变了全局变量。因为在python中,列表、字典等如果只是修改其中元素的值,可以不用gloabl,如果是修改整个列表,必须是有gloabl。

nameList=['Python','Tab','.com']
deffunc5():
gloablnameList
nameList=[]
func5()
print(nameList)

输出结果:

[]

总结:局部函数只作用于该函数内,全局函数作用于整段代码,如果要在函数内修改全局变量的值,使用gloabl。如果只修改列表,字典等中的某个值,可以不用global也可以修改全局变量。


“Python的局部和全局变量分别作用于什么,如何使用”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业技术相关的知识可以关注恒创科技网站,小编每天都会为大家更新不同的知识。
上一篇: Requests模块的主要功能是什么,怎么导入和使用 下一篇: Python占位符常用的有哪些,怎样使用