Python

时间:2016-08-04 02:02:35

标签: python

所以最近我的程序变得越来越复杂,并且开始需要更多配置。我一直在做以下事情,但感觉不对......

class config:
    delay = 1.3
    files = "path/to/stuff"
    name = "test"

dostuff(config.name) #etc...

我从未成为ALL_CAPS_VARIABLE方法的粉丝,并且想知道是否有“正式”方法来执行此操作,以及我当前的方法是否有任何问题。

1 个答案:

答案 0 :(得分:3)

我建议使用python-decouple。该库允许单独的代码与配置(数据)。

更新:

该库使用的简要说明:

只需在存储库的根目录中以以下格式创建 .env 文本文件:

DEBUG=True
TEMPLATE_DEBUG=True
EMAIL_PORT=405
SECRET_KEY=ARANDOMSECRETKEY
DATABASE_URL=mysql://myuser:mypassword@myhost/mydatabase
PERCENTILE=90%
#COMMENTED=42

OBS:*.env放入.gitignore

在你的python代码上,可以这样使用:

from decouple import config

SECRET_KEY = config('SECRET_KEY')
DEBUG = config('DEBUG', default=False, cast=bool)
EMAIL_HOST = config('EMAIL_HOST', default='localhost')
EMAIL_PORT = config('EMAIL_PORT', default=25, cast=int)