Python全局变量与局部变量区别及用法分析


Posted in Python onSeptember 03, 2018

本文实例讲述了Python全局变量与局部变量区别及用法。分享给大家供大家参考,具体如下:

对于很多初学的同学,对全局和局部变量容易混淆,看看下面给大家的讲解相信都应该明白两者的区别了。

定义:

全局变量:在模块内、在所有函数的外面、在class外面

局部变量:在函数内、在class的方法内

下面来看看例子

一、函数内部调用全局变量

a="hello" #全局变量a
def test():
 global a#调用全局变量a
 b =a  #test方法里之后再调用a时,都是全局的a
 print(b,a)
test()

在test函数里调用全局变量a,看看运行后的结果

('hello', 'hello')

运行后都是全局变量的值hello

二、函数内部使用与全局变量同名的局部变量

a="hello" #全局变量a
def test():
 a="hell0 local" #定义了一个局部变量a
 b =a  #test方法里之后再调用a时,都是局部的a
 print(b+",",a)
test()

这里在函数test里面再定义了一个a,这个a就为局部变量了,之后在test里调用的a全都是局部的a。

看看运行结果:

('hell0 local,', 'hell0 local')

三、函数内部修改全局变量值

a="hello" #全局变量a
def test():
 global a
 a="hell0 global" #修改全局变量a的值
 b =a  #test方法之里后再调用a时,都是全局的a
 print(b+",",a)
test()

在函数test里面先声明用的是全局的a,然后对a进行修改,就等于是修改了全局变量a的值。

看看运行结果:

('hell0 global,', 'hell0 global')

注:在方法内部的变量是在=号前面的,那肯定是局部变量。如果是第一次出现在=号后面的,那肯定是调用的全局变量;全局变量可以在函数里面调用,局部变量只能在对应的函数里面调用,在该函数外面任何地方都无法被调用。

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
Python常用内置函数总结
Feb 08 Python
对于Python的框架中一些会话程序的管理
Apr 20 Python
python中while循环语句用法简单实例
May 07 Python
Queue 实现生产者消费者模型(实例讲解)
Nov 13 Python
Vue的el-scrollbar实现自定义滚动
May 29 Python
解决Python2.7中IDLE启动没有反应的问题
Nov 30 Python
8段用于数据清洗Python代码(小结)
Oct 31 Python
pytorch GAN伪造手写体mnist数据集方式
Jan 10 Python
python 密码学示例——凯撒密码的实现
Sep 21 Python
安装pyinstaller遇到的各种问题(小结)
Nov 20 Python
Django debug为True时,css加载失败的解决方案
Apr 24 Python
Pytorch中使用ImageFolder读取数据集时忽略特定文件
Mar 23 Python
Python wxPython库Core组件BoxSizer用法示例
Sep 03 #Python
深入浅析Python中list的复制及深拷贝与浅拷贝
Sep 03 #Python
Python wxPython库使用wx.ListBox创建列表框示例
Sep 03 #Python
Python wxPython库消息对话框MessageDialog用法示例
Sep 03 #Python
Python中关键字global和nonlocal的区别详解
Sep 03 #Python
python leetcode 字符串相乘实例详解
Sep 03 #Python
Python模拟自动存取款机的查询、存取款、修改密码等操作
Sep 02 #Python
You might like
亲密接触PHP之PHP语法学习笔记1
2006/12/17 PHP
模拟flock实现文件锁定
2007/02/14 PHP
PHP网页游戏学习之Xnova(ogame)源码解读(十三)
2014/06/26 PHP
php精确的统计在线人数的方法
2015/10/21 PHP
浅析Yii2集成富文本编辑器redactor实例教程
2016/04/25 PHP
使用正则去除php代码中的注释方法
2016/11/03 PHP
javascript 动态修改样式和层叠样式表代码
2010/04/27 Javascript
JavaScript中length属性的使用方法
2015/06/05 Javascript
jQuery控制DIV层实现由大到小,由远及近动画变化效果
2015/10/09 Javascript
JS实现按比例缩放图片的方法(附C#版代码)
2015/12/08 Javascript
jquery简单插件制作(fn.extend)完整实例
2016/05/24 Javascript
BootStrap中Datetimepicker和uploadify插件应用实例小结
2016/05/26 Javascript
利用策略模式与装饰模式扩展JavaScript表单验证功能
2017/02/14 Javascript
详解离线安装npm包的几种方法
2018/11/25 Javascript
微信js-sdk 录音功能的示例代码
2019/11/01 Javascript
jquery制作的移动端购物车效果完整示例
2020/02/24 jQuery
原生js实现下拉框选择组件
2021/01/20 Javascript
Python+Django在windows下的开发环境配置图解
2009/11/11 Python
python3使用tkinter实现ui界面简单实例
2014/01/10 Python
python实现的解析crontab配置文件代码
2014/06/30 Python
Django数据库操作的实例(增删改查)
2017/09/04 Python
tensorflow 查看梯度方式
2020/02/04 Python
Python小白垃圾回收机制入门
2020/06/09 Python
python怎么调用自己的函数
2020/07/01 Python
HTML5 Blob对象的具体使用
2020/05/22 HTML / CSS
华为消费者德国官方网站:HUAWEI德国
2020/11/03 全球购物
大学生饮食配送创业计划书
2014/01/04 职场文书
大四学生思想汇报
2014/01/13 职场文书
省级四好少年事迹材料
2014/01/25 职场文书
抽奖活动主持词
2014/03/31 职场文书
《天安门广场》教学反思
2014/04/23 职场文书
舞蹈专业求职信
2014/06/13 职场文书
个人工作能力自我评价
2015/03/05 职场文书
范文之农村基层党建工作报告
2019/10/24 职场文书
SpringBoot+Redis实现布隆过滤器的示例代码
2022/03/17 Java/Android
详解SQL报错盲注
2022/07/23 SQL Server