当前位置: 首页 > news >正文

Python通过global实现多文件共享全局参数,方法

Python通过global实现多文件共享全局参数

global关键字,全局变量

基础用法

这种用法,不能在其他的py文件中使用,

x = 6
def func():global x #定义外部的xx = 10
func()
print (x)
#输出10

共享参数

  1. 新建glo.py文件(全局变量文件)
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
  1. glo1.py
import glo
import glo2
glo._init()
glo.set_value('cho','game')
glo2.test() # 输出game 
  1. glo2.py
import glo
def test():print(glo.get_value('cho')) 

运行glo1.py,输出game

共享方法

  1. glo.py不变

  2. glo1.py

import glo
import glo2
glo._init()test = glo2.Test(1)
print('isLosgin:',glo.get_value('isLosgin'))
print(glo.get_value('isLosgin')())
  1. glo2.py
import glo
class Test:id = 0def __init__(self,id):self.id = idglo.set_value('isLosgin',self.isLosgin)def isLosgin(self):print('id',self.id)return self.id == 1

运行glo1.py输出

isLosgin: <bound method Test.isLosgin of <glo2.Test object at 0x01C551D8>>
id 1
True
http://www.lryc.cn/news/500086.html

相关文章:

  • DevOps工程技术价值流:项目构建工具的选择与实践
  • 【数据库】复习
  • CorsConfig前后端数据跨域连接,IDEA右侧Maven窗口消失
  • Python微博动态爬虫
  • 【设计模式】单例模式 在java中的应用
  • burp suite 8
  • 为什么在Java中super与this不能共存于子类构造器中,其中this起什么作用
  • Hypothesis:高效的 Python 测试工具
  • Terminus Calculator 计算原理分享
  • Wwise 使用MIDI文件、采样音频
  • 在CentOS上无Parallel时并发上传.wav文件的Shell脚本解决方案
  • 【RocketMQ 源码分析(一)】设计理念与源码阅读技巧
  • 独立ip服务器有什么优点?
  • 如何使用Python库连接Redis
  • Vant UI +Golang(gin) 上传文件
  • 【Unity高级】如何实现粒子系统的间歇式喷射
  • 通过linux命令获取自选股票价格及大盘涨跌幅
  • 透彻理解并解决Mockito模拟框架的单元测试无法运行的问题
  • vue3字典数据的显示问题(使用hooks解决)
  • Elasticsearch 单节点安全配置与用户认证
  • 二分查找(带图详解)
  • 【Git】:标签管理
  • 物品识别 树莓派 5 YOLO v5 v8 v10 11 计算机视觉
  • 单片机软件工程师前景分析
  • 在Java中几种常用数据压缩算法的实现及其优劣势
  • Word——如何打出 符号中的 1、2、3等带圆圈的序号
  • 操作系统之进程与线程
  • 代码随想录算法训练营打卡第35天:背包问题
  • 【MySQL】数据库 Navicat 可视化工具与 MySQL 命令行基本操作
  • vscode(一)安装(ubuntu20.04)