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 相关文章推荐
以一段代码为实例快速入门Python2.7
Mar 31 Python
在Python中操作时间之tzset()方法的使用教程
May 22 Python
Python实现约瑟夫环问题的方法
May 03 Python
python中如何正确使用正则表达式的详细模式(Verbose mode expression)
Nov 08 Python
python网络爬虫之如何伪装逃过反爬虫程序的方法
Nov 23 Python
python实现简易内存监控
Jun 21 Python
python提取具有某种特定字符串的行数据方法
Dec 11 Python
python调用matlab的m自定义函数方法
Feb 18 Python
python安装gdal的两种方法
Oct 29 Python
flask 实现上传图片并缩放作为头像的例子
Jan 09 Python
如何基于windows实现python定时爬虫
May 01 Python
详解Scrapy Redis入门实战
Nov 18 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
Flash空降上海 化身大魔王接受挑战
2020/03/02 星际争霸
来自phpguru得Php Cache类源码
2010/04/15 PHP
php调用nginx的mod_zip模块打包ZIP文件
2014/06/11 PHP
php源码分析之DZX1.5随机数函数random用法
2015/06/17 PHP
PHP计算数组中值的和与乘积的方法(array_sum与array_product函数)
2016/04/01 PHP
PHP+Apache+Mysql环境搭建教程
2016/08/01 PHP
php 变量引用与变量销毁机制详细介绍
2016/12/05 PHP
如何在Mozilla Gecko 用Javascript加载XSL
2007/01/09 Javascript
jquery动态添加删除div 具体实现
2013/07/20 Javascript
javascript匿名函数应用示例介绍
2014/03/07 Javascript
超级给力的JavaScript的React框架入门教程
2015/07/02 Javascript
详解AngularJS 模态对话框
2016/04/07 Javascript
Listloading.js移动端上拉下拉刷新组件
2016/08/04 Javascript
Ionic2系列之使用DeepLinker实现指定页面URL
2016/11/21 Javascript
浅析Ajax语法
2016/12/05 Javascript
Node.js+jade+mongodb+mongoose实现爬虫分离入库与生成静态文件的方法
2017/09/20 Javascript
通过源码分析Vue的双向数据绑定详解
2017/09/24 Javascript
vue限制输入框只能输入8位整数和2位小数的代码
2019/11/06 Javascript
原生JS实现无缝轮播图片
2020/06/24 Javascript
Python如何发布程序的详细教程
2018/10/09 Python
python Tkinter的图片刷新实例
2019/06/14 Python
python编写简单端口扫描器
2019/09/04 Python
python中调试或排错的五种方法示例
2019/09/12 Python
用于ETL的Python数据转换工具详解
2020/07/21 Python
python 如何使用find和find_all爬虫、找文本的实现
2020/10/16 Python
详解css position 5种不同的值的用法
2019/07/30 HTML / CSS
【HTML5】Canvas绘制简单图片教程
2016/05/13 HTML / CSS
南非最大的花卉和送礼服务:NetFlorist
2017/09/13 全球购物
意大利文具和办公产品在线商店:Y-Office
2020/02/27 全球购物
室内设计自我鉴定
2013/10/15 职场文书
技术总监管理职责范本
2014/03/06 职场文书
请假条范文大全
2014/04/10 职场文书
医学求职自荐信
2014/06/21 职场文书
《绝招》教学反思
2016/02/20 职场文书
Python合并pdf文件的工具
2021/07/01 Python
docker compose 部署 golang 的 Athens 私有代理问题
2022/04/28 Servers