广告
返回顶部
首页 > 资讯 > 后端开发 > Python >Python跨文件全局变量的使用技巧
  • 289
分享到

Python跨文件全局变量的使用技巧

2024-04-02 19:04:59 289人浏览 薄情痞子

Python 官方文档:入门教程 => 点击学习

摘要

尽管某些书籍上总是说避免使用全局变量,但是在实际的需求不断变化中,往往定义一个全局变量是最可靠的方法,但是又必须要避免变量名覆盖。 python 中global关键字可以定义一个变量

尽管某些书籍上总是说避免使用全局变量,但是在实际的需求不断变化中,往往定义一个全局变量是最可靠的方法,但是又必须要避免变量名覆盖。

python 中global关键字可以定义一个变量为全局变量,但是这个仅限于在一个模块(py文件)中调用全局变量:

我们知道Python使用变量的时候是可以直接使用的,x=[] ,y=2,z="123",而不需要先定义(var x; var y=2;var z='222'),这样的话,在函数内部就无法操作外部的变量了,因为它总会认为你是在定义一个新变量并且赋值,不过global就可以解决这个问题。

global 的基础用法:


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

这个时候,即使你在另外一个py文件 再次使用global x也是无法访问到的,因为在这个py模块中并没有一个叫做x的变量,于是就会报错 未定义。

那么我们怎么办?

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

新建一个py文件,文件名是:Gol.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:

相信如果你看懂了就应该知道思路了,利用global的单独文件全局性,从而可以定义在一个文件中的全局变量,然后这个单个文件的全局变量可以保存多个文件的共同全局变量

操作的时候,以Key对Value 的方法操作,我相信大家都懂。


# -*- coding:utf-8 -*-
import gol
gol._init()#先必须在主模块初始化(只在Main模块需要一次即可)
#定义跨模块全局变量
gol.set_value('uuid',uuid)
gol.set_value('token',token)

然后其他的任何文件只需要导入即可使用:


# -*- coding: utf-8 -*-
import gol
#不需要再初始化了
ROOT = gol.get_value('uuid')
CODE = gol.get_value('token')

就这样就可以实现跨文件的全局变量使用;

并且还有一个简单但是强大的全局变量管理器,你可以自己添油加醋,实现一些比如全局变量禁止直接修改,禁止修改某些只可读的全局变量等等。

到此这篇关于Python跨文件全局变量的使用的文章就介绍到这了,更多相关Python跨文件全局变量内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: Python跨文件全局变量的使用技巧

本文链接: https://www.lsjlt.com/news/161587.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Python跨文件全局变量的使用技巧
    尽管某些书籍上总是说避免使用全局变量,但是在实际的需求不断变化中,往往定义一个全局变量是最可靠的方法,但是又必须要避免变量名覆盖。 Python 中global关键字可以定义一个变量...
    99+
    2022-11-12
  • python跨文件使用全局变量的实现
    目录1. 错误示范2. 正确示范跨文件使用全局变量 有多个py文件同时使用一个全局变量时,那应该如何使跨文件,用这个全局变量呢? 1. 错误示范 file1.py代码如下: num ...
    99+
    2023-03-01
    python跨文件全局变量 python 全局变量
  • python怎么实现跨文件使用全局变量
    这篇文章主要介绍“python怎么实现跨文件使用全局变量”,在日常操作中,相信很多人在python怎么实现跨文件使用全局变量问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”python怎么实现跨文件使用全局变量...
    99+
    2023-07-05
  • python全局变量的使用
    问题提出,怎么记录汉诺塔问题中盘子移动的次数? def hanu(n,a,b,c):          if n==1 :                print("move",a,"->",c)                ...
    99+
    2023-01-31
    全局变量 python
  • Python 使用全局变量
    今天在写以下Python代码时出现了问题。该段代码根据一些URL下载视频: #coding=utf-8 def save_case_infos(case_urls): for case_url in case_urls:...
    99+
    2023-01-31
    全局变量 Python
  • react使用.env文件管理全局变量的方法
    目录前言1.在根目录创建一个 .env 文件2.配置全局变量3.在项目中使用4.效果图前言 本文基于“react”: “^18.2.0&rdquo...
    99+
    2023-01-31
    react .env全局变量 react 全局变量
  • Shell全局变量、局部变量与特殊变量的具体使用
    目录1、全局变量(环境变量):2、局部变量(本地变量):3、关于局部变量的其它一些问题4、Shell的特殊变量:变量类型:全局变量(环境变量)和局部变量(本地变量)环境变量可以在定义它们的shell及其派生出来的任意子进...
    99+
    2023-05-06
    Shell全局变量 Shell局部变量 Shell特殊变量
  • 从局部变量和全局变量开始全面解析Python中变量的作用域
    理解全局变量和局部变量 1.定义的函数内部的变量名如果是第一次出现, 且在=符号前,那么就可以认为是被定义为局部变量。在这种情况下,不论全局变量中是否用到该变量名,函数中使用的都是局部变量。例如: ...
    99+
    2022-06-04
    变量 局部 全局变量
  • Apipost全局变量和环境变量的使用
    什么是全局变量? 全局变量跟环境变量作用域不同。全局变量不受当前环境的影响,只要是在同一个项目下,该变量都会生效。 环境变量和全局变量的调用方法都是一样的 {{变量名}} 全局变量的定义 目前通过脚本定义全局变量。 例如我们在预执行脚本中定...
    99+
    2023-09-22
    服务器 后端 测试工具
  • python跨文件调用变量的方法是什么
    在Python中,可以通过以下几种方法实现在多个文件中共享变量:1. 使用全局变量:在一个文件中定义一个全局变量,并在其他文件中引用...
    99+
    2023-09-25
    python
  • node.js 全局变量的具体使用
    全局对象 所有模块都可以调用 global:表示Node所在的全局环境,类似于浏览器中的window对象。 process:指向Node内置的process模块,允...
    99+
    2022-11-12
  • node.js 全局变量的使用方法
    这篇文章给大家分享的是有关node.js 全局变量的使用方法的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。全局对象所有模块都可以调用global:表示Node所在的全局环境,类似于浏览器中的window对象。pr...
    99+
    2023-06-14
  • Python全局变量关键字global的简单使用
    目录简介:案例1:全局无法使用局部变量。案例2:全局变量,任意范围均可使用。案例3:函数内定义的局部变量案例4:函数间global关键字的作用案例5:不同文件模块中的global,注...
    99+
    2022-11-11
  • 怎么在vue组件中使用全局变量
    在vue组件中使用全局变量的方法:1.新建vue.js项目;2.使用export方法定义全局变量;3.使用Vue.prototype方法挂载全局变量;4.使用this调用全局变量;具体步骤如下:首先,在vue-cli中创建一个vue.js项...
    99+
    2022-10-16
  • Python全局变量关键字global怎么使用
    这篇“Python全局变量关键字global怎么使用”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“Python全局变量关键字...
    99+
    2023-07-02
  • python使用技巧-查找文件
    标准库的fnmatch库专门用来进行文件名匹配,支持使用通配符进行字符串匹配。 1、fnmatch:判断文件名是否符合特定的模式;2、fnmatchcase:判断文件名是否符合特定的...
    99+
    2022-11-13
  • python使用技巧-文件读写
    前言: 在Python中,要对一个文件进行操作,只需要使用内置的open函数打开文件即可。open函数接受文件名和打开模式作为参数,返回一个文件对象。工程师通过文件对象来操作文件,完...
    99+
    2022-11-13
  • python中全局变量的作用域有什么用
    全局变量在Python中的作用域是整个程序的范围,可以在程序的任何地方使用和修改。这样的特性有以下几个用途:1. 共享数据:全局变量...
    99+
    2023-08-12
    python
  • 在Unity中使用全局变量的操作
    创建一个脚本,输入下面的代码。脚本不需要添加到任何物体上,globle变量可以跨场景全局调用。 using System.Collections; using System.Co...
    99+
    2022-11-12
  • 一篇文章带你了解C++ static的作用,全局变量和局部变量的区别
    目录1.static的作用2.staic全局变量和局部变量的区别,存储位置?区别: 我们自底向上的方式进行讲解:总结1.static的作用 (1) 修饰局部变量时,只初始化一...
    99+
    2022-11-12
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作