在Python中访问多个文件中的一个变量?

在Python中访问多个文件中的一个变量?,python,python-2.4,Python,Python 2.4,我有一个包含许多.py文件的包 我想: 有一个调试标志,我可以在每个文件中访问它。(实际上在一个文件中写入,在所有其他文件中读取) 每个文件中都有一个版本号,每个文件都有一个版本号。但是我想创建一个函数来获取所有文件的所有版本号 在这些情况下,如何定义变量?如何使用导入 编辑: 我使用一个空的\uuuu init\uuu.py文件,并且: 在package/classes.py中: 调试=错误 在包/db.py中: 从package.classes导入* 打印调试假设在文件/variables.

我有一个包含许多
.py
文件的包

我想:

  • 有一个调试标志,我可以在每个文件中访问它。(实际上在一个文件中写入,在所有其他文件中读取)
  • 每个文件中都有一个版本号,每个文件都有一个版本号。但是我想创建一个函数来获取所有文件的所有版本号
  • 在这些情况下,如何定义变量?如何使用
    导入

    编辑: 我使用一个空的\uuuu init\uuu.py文件,并且:

    在package/classes.py中: 调试=错误

    在包/db.py中: 从package.classes导入*


    打印调试

    假设在
    文件/variables.py
    文件中有一个名为
    标志的变量

    如果
    文件
    文件夹中有一个空的
    \uuuu init\uuuuu.py
    文件,则只需执行以下操作

    from files.variables import *
    
    您可以在导入的每个文件中访问它

    举个例子:

    文件夹结构:

    \program\ 
             \package\
                      __init__.py
                      classes.py
                      db.py
    
    以db.py为单位

    from .classes import *
    print debug
    
    应该有用


    关于版本控制,如果您想手动执行,我认为您也必须执行同样的操作,但是手动保存版本是一件麻烦的事情。

    与在Python中导入任何其他内容的方式相同。。函数毕竟只是模块中的变量。你看过报纸了吗?(或使用)。init文件是否在包文件夹中?在db中,您应该键入from classes import*,因为您已经在同一个模块中。请参阅我尝试过的:#in package/classes.py:debug=True#in init.py:from package.classes import*from package/db import*#in package/db.py:print debug有什么问题吗?请将init文件留空,并最终更新主帖子,而不是注释,否则对我们来说会更困难。import语句应该在使用它的每个文件中,而不是在init中,实际上“.classes”不起作用。如果我使用“package.classes”,它也不知道db.py中的debug:(我只是不喜欢导入逻辑…我知道你刚才在使用python2.4,所以可能“.classes”因为这个原因不起作用。也许你没有告诉我们其他事情?像这样,一切都应该顺利进行