Python实现全局变量的两个解决方法


Posted in Python onJuly 03, 2014

本文针对Python的全局变量实现方法简述如下:
先来看下面一段测试程序:

count = 0
def Fuc(count):
  print count
  count += 1
for i in range(0, 10):
  Fuc(count)

运行结果是:

>>>
0
0
0
0
0
0
0
0
0
0

很显然,这并不是我们想要的结果。

针对这一问题的解决方法就是采用全局变量:

global a
a = 3
def Fuc():
  global a
  print a
  a = a + 1
if __name__ == "__main__":
global a
  for i in range(10):
    Fuc()print 'hello'
  print a

运行结果为:

>>>
3
4
5
6
7
8
9
10
11
12
hello
13

需要注意:哪里需要全局变量,哪里声明一下;但是函数千万不要传参数,比如用Fuc(a)是不行的。

解决方法2--列表:

示例代码如下:

a = [3]
def Fuc():
  print a[0]
  a[0] = a[0] + 1
if __name__ == "__main__":
  global a
  for i in range(10):
    Fuc()
  print 'hello'
  print a[0]

结果同上

列表也可以比较简单的实现这一功能

Python 相关文章推荐
最大K个数问题的Python版解法总结
Jun 16 Python
Python的时间模块datetime详解
Apr 17 Python
python3通过selenium爬虫获取到dj商品的实例代码
Apr 25 Python
Django框架静态文件使用/中间件/禁用ip功能实例详解
Jul 22 Python
Python partial函数原理及用法解析
Dec 11 Python
python打印文件的前几行或最后几行教程
Feb 13 Python
pycharm实现在虚拟环境中引入别人的项目
Mar 09 Python
解决paramiko执行命令超时的问题
Apr 16 Python
Python Tornado核心及相关原理详解
Jun 24 Python
python 批量下载bilibili视频的gui程序
Nov 20 Python
python基于tkinter制作无损音乐下载工具
Mar 29 Python
python中的装饰器该如何使用
Jun 18 Python
Python实现端口复用实例代码
Jul 03 #Python
在 Django/Flask 开发服务器上使用 HTTPS
Jul 03 #Python
采用python实现简单QQ单用户机器人的方法
Jul 03 #Python
centos系统升级python 2.7.3
Jul 03 #Python
python实现定制交互式命令行的方法
Jul 03 #Python
小结Python用fork来创建子进程注意事项
Jul 03 #Python
在Windows8上的搭建Python和Django环境
Jul 03 #Python
You might like
实例讲解如何在PHP的Yii框架中进行错误和异常处理
2016/03/17 PHP
Zend Framework实现将session存储在memcache中的方法
2016/03/22 PHP
js arguments对象应用介绍
2012/11/28 Javascript
javascript根据时间生成m位随机数最大13位
2014/10/30 Javascript
使用node.js 获取客户端信息代码分享
2014/11/26 Javascript
Jquery中CSS选择器用法分析
2015/02/10 Javascript
Redis基本知识、安装、部署、配置笔记
2015/03/05 Javascript
Javascript对象Clone实例分析
2015/06/09 Javascript
Javascript简单改变表单元素背景的方法
2015/07/15 Javascript
JS组件Bootstrap Select2使用方法详解
2020/04/17 Javascript
Google 地图API资料整理及详细介绍
2016/08/06 Javascript
Web前端开发之水印、图片验证码
2016/11/27 Javascript
在vue-cli脚手架中配置一个vue-router前端路由
2017/07/03 Javascript
vue router2.0二级路由的简单使用
2017/07/05 Javascript
基于jQuery的$.getScript方法去加载javaScript文档解析
2017/11/08 jQuery
JavaScript中join()、splice()、slice()和split()函数用法示例
2018/08/24 Javascript
JavaScript解析机制与闭包原理实例详解
2019/03/08 Javascript
详解Vue+Element的动态表单,动态表格(后端发送配置,前端动态生成)
2019/04/20 Javascript
微信小程序3种位置API的使用方法详解
2019/08/05 Javascript
vue使用nprogress加载路由进度条的方法
2020/06/04 Javascript
[04:15]DOTA2-DPC中国联赛 正赛 Ehome vs Aster 选手采访
2021/03/11 DOTA
Python类定义和类继承详解
2015/05/08 Python
Python在线运行代码助手
2016/07/15 Python
基于python生成器封装的协程类
2019/03/20 Python
详解Python数据可视化编程 - 词云生成并保存(jieba+WordCloud)
2019/03/26 Python
Django中URL的参数传递的实现
2019/08/04 Python
创建Shapefile文件并写入数据的例子
2019/11/26 Python
Keras使用ImageNet上预训练的模型方式
2020/05/23 Python
Python实现http接口自动化测试的示例代码
2020/10/09 Python
CSS3实现曲线阴影和翘边阴影
2016/05/03 HTML / CSS
详解HTML5之pushstate、popstate操作history,无刷新改变当前url
2017/03/15 HTML / CSS
早餐连锁店计划书
2014/01/08 职场文书
草船借箭教学反思
2014/02/03 职场文书
商场父亲节活动方案
2014/08/27 职场文书
运动会闭幕词
2015/01/28 职场文书
长江三峡导游词
2015/01/31 职场文书