【发布时间】:2012-11-30 20:47:45
【问题描述】:
我正在创建我的第一个相当复杂的模块,并且像 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 文件中实例化它们。但是如何做到这一点呢?
任何帮助在这里表示赞赏。
【问题讨论】:
-
为什么
__init__.py中有常量?把它们放在Frame.py -
哈哈。我计划这样做,但我也想知道如何做到这一点。
标签: python module python-2.7 package