python - Python 中配置变量的最佳实践

标签 python

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

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

dostuff(config.name) #etc...

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

最佳答案

我推荐使用 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)

关于python - Python 中配置变量的最佳实践,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38757351/

相关文章:

python - 使用 BitNami 镜像在 EC2 上部署 Django 项目

python - 卷积神经网络性能的奇怪模式

python - 张量转换请求 dtype int32 为 dtype int64 的张量 - while estimator.export_savedmodel

python - Conda删除卸载的软件包比预期多

python - 使用 Mahalanobis 距离进行多元异常值去除

Python:PyEnchant 和 64 位 Python

python - 尽管先前已定义名称错误?

python - SIFT 或 SURF - 提供关键点并检索描述符

python - Django .all() 对 unique_together 模型进行查询

python - tornado/graphlab 无法在 docker 中分配请求的地址