Python模块变量

时间:2013-10-07 10:44:49

标签: python

在我的应用程序的根目录中,我有一个设置变量的app_db.py文件。然后在我的app / models / models.py中尝试

from app_db import * 

并尝试访问变量,但它给出了一个错误,即未定义变量。我的app / models包含 init .py文件和models.py文件。我究竟做错了什么?我的app_db.py文件很简单

if os.environ.get('DATABASE_URL') is None:
    SQLALCHEMY_DATABASE_URI = 'postgresql://mfrtdskrujqfer:tIkrP25Zsl7W3MQtrw0@ec2-184-78-175-240.compute-1.amazonaws.com:5432/dev03fouea9lm'
else:
    SQLALCHEMY_DATABASE_URI = os.environ['DATABASE_URL']

1 个答案:

答案 0 :(得分:0)

如果您要from package import *,那么您想要的所有内容都必须列在package/__init__.py文件__all__条目中。

如果您from package import (name1, name2,...),那么除非名称以下划线为前缀,否则您不必这样做(参见关于名称修改的PEP8部分)。

当然更好的是使用import package并访问package.name1等。