网络编程
位置:首页>> 网络编程>> Python编程>> python中的全局变量用法分析

python中的全局变量用法分析

作者:依山带水  发布时间:2022-04-04 01:29:02 

标签:python,全局变量

本文实例分析了python中的全局变量用法。分享给大家供大家参考。具体分析如下:

Python是一种面向对象的开发语言,在函数中使用全局变量,一般应作全局变量说明,只有在函数内经过说明的全局变量才能使用,这里就来介绍下Python全局变量有关问题。

首先应该说明的是需要尽量避免使用Python全局变量。不同的模块都可以自由的访问全局变量,可能会导致全局变量的不可预知性。对全局变量,如果程序员甲修改了_a的值,这时可能导致程序中的错误。这种错误是很难发现和更正的。

全局变量降低了函数或模块之间的通用性,不同的函数或模块都要依赖于全局变量。同样,全局变量降低了代码的可读性,阅读者可能并不知道调用的某个变量是全局变量。 但是某些时候,Python全局变量能够解决局部变量所难以解决的问题。事物要一分为二。 python里面全局变量有两种灵活的用法:

gl.py:


gl_1 = 'hello'
gl_2 = 'world'

在其它模块中使用

a.py:


import gl
def hello_world()
 print gl.gl_1, gl.gl_2

b.py:


import gl
def fun1()
 gl.gl_1 = 'Hello'
 gl.gl_2 = 'World'
def modifyConstant() :
   global CONSTANT
   print CONSTANT
   CONSTANT += 1
   return
if __name__ == '__main__' :
   modifyConstant()
   print CONSTANT

1 声明法

在文件开头声明Python全局变量variable, 在具体函数中使用该变量时,需要事先声明 global variable,否则系统将该变量视为局部变量。 CONSTANT = 0  (将全局变量大写便于识别)

2模块法(推荐)

推荐!

gl.py:


gl_1 = 'hello'
gl_2 = 'world'

在其它模块中使用

a.py:


import gl
def hello_world()
 print gl.gl_1, gl.gl_2

b.py:


import gl
def fun1()
 gl.gl_1 = 'Hello'
 gl.gl_2 = 'World'
def modifyConstant() :
   global CONSTANT
   print CONSTANT
   CONSTANT += 1
   return
if __name__ == '__main__' :
   modifyConstant()
   print CONSTANT

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

0
投稿

猜你喜欢

  • 本文实例讲述了Python实现的直接插入排序算法。分享给大家供大家参考,具体如下:# -*- coding:utf-8 -*-'&#
  • vue单向数据流在vue中需要遵循单向数据流原则在父传子的前提下,父组件的数据发生会通知子组件自动更新子组件内部,不能直接修改父组件传递过来
  • 前言有时候我们做项目的时候往往会需要把数组里面一些重复的项去掉,但是原生JS有排序,有筛选等等,但是就是没有数组去重怎么办呢?这能怎么办,自
  • 不论你做什么样的设计,色彩都是一个不容忽视的问题。色彩以一种“隐蔽”的方式传达的各种信息,这些信息会影响观看者的心理和感受,左右他们的判断和
  • 最近由于公司有一个向谷歌网站上传文件的需求,需要进行web的自动化测试,选择了selenium这个自动化测试框架,以前没有接触过这门技术,所
  • python 的 zipfile 提供了非常便捷的方法来压缩和解压 zip 文件。例如,在py脚本所在目录中,有如下文件:readabili
  • 本文介绍了Python对于正则表达式的支持,包括正则表达式基础以及Python正则表达式标准库的完整介绍及使用示例。本文的内容不包括如何编写
  • 为什么要用el-scrollbar?最近在写一个内部平台系统,相信大家都知道,其中会有很多自定义的滚动区域,就比如说现在有一个列表需要滚动,
  • MySQL数据库是一款非常好用的数据库管理系统,但是相对来说卸载起来麻烦一些这里给大家分享下MySQL数据库如何卸载干净~1 停止MySQL
  • 1.多选按钮的方法以下为常用的方法:方法描述deselect()清除多选按钮选中选项。flash()在激活状态颜色和正常颜色之间闪烁几次多选
  • Python中有以下几个基本的数据类型:整数 int字符串 str浮点数 float集合 set列表 list元组 tuple字典 dict
  • 从某个页面表单中取出信息是ASP编程中常见的问题。但是,遍历通过表单传递的记录会花去多长时间呢?这取决于数据库的大小。简单的GUI界面都可能
  • :hover是我们在CSS设计中最常运用的伪类之一,许多绚丽效果的实现离不开伪类:hover,比如我们常见的纯CSS菜单、相册效果等等。或许
  • 本文介绍使用aspjpeg组件实现图片的半透明描边的效果,描边效果演示:参数说明'big 原图路径(相对)'small 生成
  • 背景(background)在项目中经常会使用。这篇文章主要讲解的是实际项目中的5个实例。通过具体的分析来达到学习的目的。1,Li列表通过u
  • 反射是 Go 语言的高级主题之一。我会尽可能让它变得简单易懂。本教程分为如下小节。什么是反射?为何需要检查变量,确定变量的类型?reflec
  • 数据是企业核心资产,数据对企业而言是最重要的工作之一。稍有不慎,极有可能发生数据无意泄露,甚至被黑客恶意窃取的风险。每年业界都会传出几起大事
  • 本文实例讲述了Python面向对象封装操作。分享给大家供大家参考,具体如下:目标封装小明爱跑步存放家具01. 封装封装 是面向对象编程的一大
  • 在logging中,Logger's level 的默认等级为warning所以虽然在handler中setlervel了,Logg
  • 前言我们经常会有这样的需求,比如评论功能,每个评论都有可能会有自己的子评论,如果在界面只展示成一列的话非常不美观,也不能体现出他们的层级关系
手机版 网络编程 asp之家 www.aspxhome.com