迹忆客 专注技术分享

当前位置:主页 > 学无止境 > 编程语言 > Python >

在 Python 中跨多个文件使用全局变量

作者:迹忆客 最近更新:2023/06/26 浏览次数:

这个简单的指南是关于在 Python 中跨多个文件使用全局变量的。 但在进入主题之前,我们先简要了解一下全局变量及其在多个文件中的使用。


Python 中的全局变量

全局变量是不属于函数作用域的变量,可以在整个程序中全局使用。 这表明全局变量也可以在函数体内部或外部使用。

让我们看一个例子:

x = "my global var"
def fun1():
    print("Inside fun1(): ",x)

fun1()
print("In global context: ",x)

我们在这段代码中定义了一个全局变量 x 并为其分配了一些值。 然后,我们在函数内部和外部打印 x 变量以查看两个作用域中的值。

输出:

Python 全局变量 - 输出

输出表明变量的值在函数内部和外部是相同的。 如果我们需要在某些局部范围内(例如在函数中)更改全局变量的值,那么我们在声明变量时需要使用关键字 global 。


在 Python 中跨多个文件使用全局变量

如果我们的程序使用多个文件并且这些文件需要更新变量,那么我们应该使用全局关键字声明变量,如下所示:

global x = "My global var"

考虑一个示例场景,我们必须处理多个 Python 代码文件和学生列表的全局变量。 resources.py 文件有一个学生的全局列表,prog.py 有一个方法将学生追加到这个全局列表中。

我们可以使用以下代码来实现这个概念:

代码-resource.py:

def initialize():
    global students
    students = []

代码- prog.py:

import resource

def addStudent():
    resource.students.append('John')
    resource.students.append('Dave')

代码- Main.py:

import resource
import prog

resource.initialize()
prog.addStudent()
print(resource.students[0])
print(resource.students[1])

在第一个resource.py文件中,我们定义了一个函数,在其中声明一个列表studentList并将其初始化为一个空列表。 在下一个文件(即 prog.py)中,我们包含了资源模块,然后定义了一个函数 addStudent,其中我们在全局列表 StudentList 中添加了两个对象。

在主文件 Main.py 中,我们包含了模块、资源和 prog。 随后,我们分别调用了两个模块的函数initialize和addStudent。

之后,当我们打印列表索引时,我们得到以下输出:

Python 跨文件全局变量 - 输出

因此,我们可以使用 global 关键字在 Python 文件中定义全局变量,以便在其他文件中使用。 现在,要访问另一个文件中一个文件的全局变量,请将具有全局变量的文件作为另一个文件中的模块导入,然后直接访问导入模块的任何全局变量,而无需额外的复杂性。

上一篇:基于 Python 中的值对计数器进行排序

下一篇:没有了

转载请发邮件至 1244347461@qq.com 进行申请,经作者同意之后,转载请以链接形式注明出处

本文地址:

相关文章

基于 Python 中的值对计数器进行排序

发布时间:2023/06/26 浏览次数:165 分类:Python

本篇文章介绍如何使用 Python 根据计数器的值对计数器进行排序。Python 计数器概述 计数器是 Python 中集合模块的一部分,可帮助计算特定字符出现的总数。

在Python中发送UDP数据包

发布时间:2023/06/26 浏览次数:92 分类:Python

今天,我们将学习用户数据报协议(UDP),并了解如何使用 Python 编程发送 UDP 数据包。在Python中发送UDP数据包

Python 自定义迭代器

发布时间:2023/06/26 浏览次数:119 分类:Python

在本文中,我们将了解什么是迭代器以及如何借助 __iter__ 和 __next__ 类方法创建自定义迭代器。 我们还将学习如何在 Python 生成器的帮助下创建自定义迭代器。借助 Python 中的类方法 __iter__ 和

Python 高斯核

发布时间:2023/06/26 浏览次数:161 分类:Python

高斯核是一种高通滤波器,是图像处理中最常用的滤波器之一。 它也用于机器学习。 本博客将介绍该内核以及如何使用它。

Python 脚本中的 FFmpeg

发布时间:2023/06/26 浏览次数:167 分类:Python

本篇文章将介绍在Python中使用FFMPEG命令。安装 FFmpeg Python 包 首先,您必须在系统上安装 FFmpeg。 以管理员身份打开命令提示符并运行以下命令以使用 choco 安装 FFmpeg。

Python 中的 DNS 查找

发布时间:2023/06/25 浏览次数:118 分类:Python

本文将讨论 DNS 和 DNS 查找的概念。 之后,我们讨论使用 Python 进行 DNS 查找的方法。什么是 DNS DNS(域名系统)将域名转换为公共IP地址。

了解 Python 中的槽

发布时间:2023/06/25 浏览次数:167 分类:Python

本文将讨论槽常量变量在 Python 中的工作原理以及它如何比使用字典更好。了解 Python 中的槽

在 Python 中设置 HTTP 代理设置

发布时间:2023/06/25 浏览次数:141 分类:Python

在本文中,我们将讨论如何在我们的计算机和Python中设置HTTP代理设置。使用export命令在Python中设置HTTP代理设置

Pipenv 指定Python版本

发布时间:2023/06/25 浏览次数:88 分类:Python

本文讨论了使用 Pipenv 创建具有特定 Python 版本的虚拟环境的几种方法。 我们将列出先决条件并解释如何使用 pipelinev 所需的命令在虚拟环境中安装特定版本的 Python。

扫一扫阅读全部技术教程

社交账号
  • https://www.github.com/onmpw
  • qq:1244347461

最新推荐

教程更新

热门标签

扫码一下
查看教程更方便