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中cPickle用法例子分享
Jan 03 Python
Python fileinput模块使用介绍
Nov 30 Python
Python八大常见排序算法定义、实现及时间消耗效率分析
Apr 27 Python
Python实现快速傅里叶变换的方法(FFT)
Jul 21 Python
Django使用AJAX调用自己写的API接口的方法
Mar 06 Python
python中yield的用法详解——最简单,最清晰的解释
Apr 04 Python
详解PyTorch手写数字识别(MNIST数据集)
Aug 16 Python
关于Python核心框架tornado的异步协程的2种方法详解
Aug 28 Python
window7下的python2.7版本和python3.5版本的opencv-python安装过程
Oct 24 Python
Python常用编译器原理及特点解析
Mar 23 Python
python3中datetime库,time库以及pandas中的时间函数区别与详解
Apr 16 Python
Keras搭建自编码器操作
Jul 03 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下通过curl抓取yahoo boss 搜索结果的实现代码
2011/06/10 PHP
PHP中fwrite与file_put_contents性能测试代码
2013/08/02 PHP
PHP实现的mysql主从数据库状态检测功能示例
2017/07/20 PHP
php中try catch捕获异常实例详解
2020/08/06 PHP
ExtJS 入门
2010/10/29 Javascript
Jquery取得iframe下内容的方法
2013/11/18 Javascript
深入理解JavaScript系列(33):设计模式之策略模式详解
2015/03/03 Javascript
jquery实现select下拉框美化特效代码分享
2015/08/18 Javascript
jQuery实现图像旋转动画效果
2016/05/29 Javascript
js+css3制作时钟特效
2016/10/16 Javascript
AngualrJs清除定时器遇到的坑
2017/10/13 Javascript
BootStrap modal实现拖拽功能
2018/12/01 Javascript
jQuery实现的鼠标拖动画矩形框示例【可兼容IE8】
2019/05/17 jQuery
JS获取表格视图所选行号的ids过程解析
2020/02/21 Javascript
js瀑布流布局的实现
2020/06/28 Javascript
JavaScript实现网页跨年倒计时
2020/12/02 Javascript
利用JavaScript为句子加标题的3种方法示例
2021/01/05 Javascript
Python实现多行注释的另类方法
2014/08/22 Python
Python基础之函数用法实例详解
2014/09/10 Python
python关闭windows进程的方法
2015/04/18 Python
深入解析Python设计模式编程中建造者模式的使用
2016/03/02 Python
Python使用base64模块进行二进制数据编码详解
2018/01/11 Python
解决pandas.DataFrame.fillna 填充Nan失败的问题
2018/11/06 Python
python并发编程多进程 互斥锁原理解析
2019/08/20 Python
Python自动化测试笔试面试题精选
2020/03/12 Python
HTML5轻松实现全屏视频背景的示例
2018/04/23 HTML / CSS
Canvas图片分割效果的实现
2019/07/29 HTML / CSS
纽约手袋品牌:KARA
2018/03/18 全球购物
PREMIUM-MALL法国:行李、箱包及配件在线
2019/05/30 全球购物
澳大利亚家用电器在线商店:Billy Guyatts
2020/05/05 全球购物
竞选班长演讲稿
2013/12/30 职场文书
放飞理想演讲稿
2014/09/09 职场文书
大学军训口号大全
2015/12/24 职场文书
《青山不老》教学反思
2016/02/22 职场文书
Redis安装启动及常见数据类型
2021/04/14 Redis
手把手教你导入Go语言第三方库
2021/08/04 Golang