Python包中的常量
我正在写一个Python包,想知道放常量的最佳位置在哪里?
我知道可以在包里创建一个叫'constants.py'的文件,然后用模块名加常量名来调用,比如module.constants.const。但是,难道没有办法把常量和整个模块关联起来吗?比如你可以用numpy.pi来调用常量,我该怎么做才能做到类似的效果呢?
另外,在模块中,放置指向模块外部目录的路径,方便我读写文件的最佳位置又在哪里呢?
1 个回答
7
把常量放在你觉得最容易管理的地方。通常来说,这意味着把它们放在逻辑上属于它们的模块里。
你可以把常量导入到你的包的 __init__.py
文件中,这样别人就更容易找到它们。如果你决定创建一个 constants
模块,我建议你添加一个 __all__
列表,来说明哪些值是公开的,然后在 __init__.py
文件里这样做:
from constants import *
这样就可以在包的层级上使用相同的名称了。