当前位置 : 主页 > 编程语言 > python >

python 3 实现定义跨模块的全局变量和使用

来源:互联网 收集:自由互联 发布时间:2022-06-18
python3 定义全局变量的方法有哪些? 使用global关键字可以定义一个变量为全局变量 定义一个“全局变量管理模块” global与全局变量管理模块的使用环境 global的作用就是把局部变量提升


python3 定义全局变量的方法有哪些?

  • 使用global关键字可以定义一个变量为全局变量
  • 定义一个“全局变量管理模块”
  • global与全局变量管理模块的使用环境

    global的作用就是把局部变量提升为全局变量仅限于当前文件 当有另一个py文件再次需要使用这个全局变量时global关键字就无法满足了,所以就需要自定义一个全局变量管理模块

    借鉴global 关键字的思路,既然在一个文件里面可以生效的话,那么我们就专门为全局变量定义一个“全局变量管理模块”就好了

    操作:

    全局变量模块global_demo.py

    # -*- coding: utf-8 -*-
    def _init():#初始化
    global _global_dict
    _global_dict = {}


    def set_value(key,value):
    """ 定义一个全局变量 """
    _global_dict[key] = value


    def get_value(key,defValue=None):
      """ 获得一个全局变量,不存在则返回默认值 """
    try:
    return _global_dict[key]
    except KeyError:
    return defValue

    设置全局变量 write.py

    import global_demo as gl
    gl._init()

    gl.set_value('name', 'cc')
    gl.set_value('score', 90)

    获取全局变量 read.py

    # -*- coding: utf-8 -*-
    import global_demo as gl

    name = gl.get_value('name')
    score = gl.get_value('score')

    print("%s: %s" % (name, score))

    主程序 main.py

    import write
    import read

    这时文件结构应该为

    python 3 实现定义跨模块的全局变量和使用_文件结构

    然后运行主程序文件 python main.py,得出的结果是 cc: 90



    上一篇:python制作图片缩略图
    下一篇:没有了
    网友评论