使用 python 范围内的全局变量

Working with variables that are global in scope in python

我正在创建一个 python 程序,我刚刚完成了 login/signup 功能。拥有一个可以在整个应用程序中引用的 user 变量(包含用户信息)对我来说是理想的。我该怎么做?答案是不断地从一个文件传递到另一个文件(这看起来有点乏味)还是有其他解决方案。

同样,我也想做一些状态管理(正在考虑使用像 pytransitions 这样的库)来跟踪不同的用户状态。有没有办法让状态在整个应用程序中都可以全局访问?这将使根据需要访问和更改状态变得非常容易。

我知道 python 中有全局变量,但它们似乎只是 'global' 文件中的变量。因此,如果我有 file1.py 和一个名为 someVar 的全局变量,根据我的理解,它不会在另一个文件 file2.py

中访问

将所有全局变量移动到一个文件中,我将此文件命名为settings.py。该文件负责定义全局变量并初始化它们:

# settings.py

def init():
    global myList
    myList = []

接下来,您的子文件可以导入全局变量:

# subfile.py

import settings

感谢 globalvariables between files