Python模块级常量

时间:2012-12-13 01:59:49

标签: python module python-2.7 package

我正在创建我的第一个相当复杂的模块,就像wx模块一样,我希望提供各种常量来简化程序员设置样式的任务。

假设以下目录结构:

Module
   +-__init__py
   +- Frame.py

以及 init .py

的内容
__ALL__=["Frame.py"]
FRAME_DEFAULT_SIZE = (640, 480)
FRAME_DEFAULT_TITLE = "Some Simple Title"

然后在Frame.py

class Frame(object)
    """Some docstrings go here
    """
    def __init__(self, parent, ID=-1,title=HOW DO I REFERENCE MY CONSTANT,
                 size = HOW DO I REFERENCE THIS CONSTANT):
        etc ...

如果我要导入我的模块以便在一段程序代码中使用,那么常量将分别作为Module.FRAME_DEFAULT_SIZE和Module.FRAME_DEFAULT_TITLE提供。

但是,当它们在一个单独的文件中定义时,我如何将它们作为类定义的一部分引用,它们应该在模块名称空间中?

我意识到常量(如果命名良好并且使用得很好)应该只应用于父类和它的子类,所以我可以在Frame.py文件中实例化它们。但是这样做怎么做呢?

这里有任何帮助。

1 个答案:

答案 0 :(得分:1)

导入Module并将其访问。那部分不会因为你在子模块中而改变。