-1

我有以下目录结构:

目录名称是test_app

|-- __init__.py
|-- manage.py
|-- models.py
|-- views.py

我有一个非常基本的问题要问,我将以下值放入我的__init__.py

alpha = "123"
beta = "546"

我如何在模型、视图和管理中获得 alpha 和 beta 的值?我尝试了以下方法:

from . import alpha

from test_app import alpha

他们两个都没有工作,我该怎么做?

4

2 回答 2

4

__init__.py通常为空,表示您的目录中的文件,在这种情况下 test_app 可以导入。您可以将您的值放在另一个 .py 文件中(例如:constants.py)并执行以下操作:

|-- __init__.py
|-- manage.py
|-- models.py
|-- views.py
|-- constants.py

然后导入你的常量:

from test_app import constants

constants.py 的内容是

alpha = "123"
beta = "546"

然后你就可以使用你存储在常量中的任何值

print(constants.alpha)
print(constants.beta)
于 2012-05-08T20:00:49.450 回答
0

我不确定我是否会将常量或我需要包含的内容放入 中__init__.py,但这是:

from __init__ import things

将适用于导入things定义在__init__.py.

我不这样做的原因是,python 包通常__init__.py用于控制通过以下方式导出的内容。from package.name import *在这种情况下,您的常量也将被导出——如果这是您想要的,这很好,但如果不是,那就不好了。

于 2012-05-08T19:50:15.530 回答