【Python自学笔记】(二)如何跨文件调用全局变量

    Python中,global定义的全局变量只能在同一个文件中使用,当在一个工程中跨文件调用时,就不行了。

    如何跨文件调用全局变量呢?

    可以在工程中,定义一个全局变量管理文件 globalvar.py,然后把该文件import进去。

globalvar.py

#globalvar.py
#!/usr/bin/python
# -*- coding: utf-8 -*-

def _init():
    global _global_dict
    _global_dict = {}

def set_value(name, value):
    _global_dict[name] = value

def get_value(name, defValue=None):
    try:
        return _global_dict[name]
    except KeyError:
        return defValue

    之后,在a文件中定义全局变量val_a:

a.py

#a.py
#!/usr/bin/python
# -*- coding: utf-8 -*-

import sys
import globalvar as gl    #添加全局变量管理模块

gl._init()                #初始化全局变量管理模块

gl.set_value('val_a',80 ) #设置变量值 val_a = 80
val_b = gl.get_value('val_a')   #a文件需要用val_a的值,也需要添加这行代码来得到它的值

       b文件中需要用到val.a:

b.py

#b.py
#!/usr/bin/python
# -*- coding: utf-8 -*-

import globalvar as gl          #引用全局变量管理模块

val_b = gl.get_value('val_a')   #得到val_a的值
                                #下面就可以使用了

 

评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值