python环境工具链
python-envtools的Python项目详细描述
python的有用环境工具链
覆盖环境
重写环境变量的上下文处理器。
>>> @override_environment(DEBUG=False, FOO="Bar") >>> def foo(): >>> print(os.getenv("FOO")) >>> return os.getenv("DEBUG") >>> foo() FOO "DEBUG"
>>> with override_environment(DEBUG="False", FOO="Bar"): >>> print(os.getenv("FOO")) >>> os.getenv("DEBUG") FOO "DEBUG"
配置日志记录
在configure日志中包装一个configdict,那么日志级别可以由环境变量控制
LOGGING = configure_logging({ "loggers": { "module": { "handlers": ["console"], "level": "INFO", }, } })
对于本例,环境变量必须设置为logging_level_module=debug。
获取环境
类似于os.getenv(),但将字符串内容(默认)计算为简单的python类型。
>>> os.environ['FOO'] = "1" >>> os.getenv('FOO') "1" >>> get_env('FOO') 1 >>> os.environ['FOO'] = "bar" >>> get_env('FOO') "bar" >>> os.environ['FOO'] = "True" >>> os.getenv('FOO') "True" >>> get_env('FOO') True >>> os.environ['FOO'] = "[1,2,3]" >>> os.getenv('FOO') "[1,2,3]" >>> get_env('FOO') [1, 2, 3]
它适用于列表、元组、字典、数字、布尔值和字符串。而且很安全!