如何在Python中跨模块共享全局变量?

如何在Python中跨模块共享全局变量?

要在Python中跨模块共享全局变量,首先需要了解什么是全局变量及其作用域。

全局变量

示例

如果一个变量可以从任何地方(即函数内部和外部)访问,那么它就是具有全局作用域的。

让我们看一个示例:

# 变量
i = 10

# 函数
def example():
   print(i)
print(i) # 同一个变量在函数外也可以访问

# 调用example()函数
example()

# 同一个变量在函数外也可以访问
print(i)

输出

10
10
10

跨模块共享信息

现在,为了在Python中跨多个模块共享信息,我们需要创建一个config或cfg模块。要将其形成为全局变量,即可以从任何地方访问的全局变量,请在应用程序的所有模块中导入config模块,如上面的示例所示:

import config

通过在所有模块中导入模块,模块就变成了一个全局名称。由于每个模块只有一个实例,对模块对象进行的任何更改都会在整个应用程序中反映出来。

现在让我们来看一个例子。这是 config.py

# 'k'配置设置的默认值
k = 0

这是mod.py,它导入了上面的config:

import config
config.k = 1

这是main.py,它导入了config和mod:

import config
import mod

print(config.k)

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程