在Python中,变量根据作用域可分为全局变量和局部变量:
全局变量:
- 定义在函数或类外部的变量
- 在整个模块中都可以访问
- 在函数内部使用时需要用global关键字声明
- 生命周期从创建到程序结束
局部变量:
- 定义在函数内部的变量
- 只能在定义它的函数内部访问
- 函数执行结束后会被销毁
- 不需要特殊声明
全局变量与局部变量的区另大体汇总如下:
作用域不同
全局变量:定义在函数或类外部,整个模块都可以访问
局部变量:定义在函数内部,只能在定义它的函数内访问
生命周期不同
全局变量:从创建到程序结束一直存在
局部变量:函数执行时创建,函数结束后销毁
访问方式不同
全局变量在函数内部修改需要使用global关键字声明
局部变量可以直接在函数内部使用
命名冲突处理
当全局变量和局部变量同名时:
在函数内部优先使用局部变量
在其他地方使用全局变量
这里我们也可以通过一段代码就可以看到效果,说明:
# 全局变量 name = "全局变量名字" def func(): # 局部变量 name = "局部变量名字" print("函数内:", name) # 输出局部变量 name="qq:5201351" print(locals().get("name")) print(globals().get("name")) func() print("函数外:", name) # 在函数外,输出的就是全局变量的值
执行的结果如下:
函数内: 局部变量名字 qq:5201351 全局变量名字 函数外: 全局变量名字
尊重别人的劳动成果 转载请务必注明出处:https://www.cnblogs.com/5201351/p/18976846
作者:一名卑微的IT民工
出处:https://www.cnblogs.com/5201351
本博客所有文章仅用于学习、研究和交流目的,欢迎非商业性质转载。
由于博主的水平不高,文章没有高度、深度和广度,只是凑字数,不足和错误之处在所难免,希望大家能够批评指出。
博主是利用读书、参考、引用、复制和粘贴等多种方式打造成自己的文章,请原谅博主成为一个卑微的IT民工!
 
         
                
            
         浙公网安备 33010602011771号
浙公网安备 33010602011771号