zoukankan      html  css  js  c++  java
  • python中环境变量的使用

    前言

    之前就经常用,今天来凑个篇数.
    在开发的过程中,我们经常会将代码中某些可能更改的,比如redis地址,数据库地址,限流阈值等参数写活来提高灵活性,
    传统的方式可能是写在配置文件中,比如 xml yml 等文件中解析.
    但这种文件的方式配合 Docker 使用较为麻烦,
    于是,将配置写入环境变量的方式逐渐流行起来,这种方式更适合 Docker 使用
    本文介绍如何在Python中实现环境变量的插入与读取

    正文

    插入环境变量

    .env文件

    当然,在读取之前需要插入环境变量,这一步可以由 Docker 解决,但是在开发中我们一般不会使用 Docker 打包后再测试
    一般的,我们会在项目的根目录新建一个 .env 文件,里面保存在项目启动前需要写入的环境变量,我们在测试时可先插入环境变量来完成配置写入
    .env 文件大致如下

    其实就是每行为一个要插入的变量, 结构为 k=v
    注意环境变量写入的都是字符串,不存在别的类型
    同时还要注意避免与系统自带的环境变量冲突,比如系统变量已经有了 path 而你自定义也叫 path 可能会因为覆盖而出现混乱
    所以在设置环境变量时一般会在最前面加上该项目代号,比如上图项目叫 CHAOS
    环境变量k一般全部大写

    写入环境变量

    使用os与sys模块可以实现单条导入,但是一个文件需要自己手动实现,而有其他模块可以帮助我们解决
    GitHub
    pip install python-dotenv
    我们一般在项目开始读取配置文件,所以测试时在读取之前写入一遍
    比如在启动文件 main.py 中调用 config.py 读取配置, 那么在 config.py 开头先读取 .env 文件并用 dotenv 模块写入

    以上代码可导入 config.py 上一级目录的 .env 文件写入环境变量(实际目录结构的更改影响此代码)

    读取环境变量

    环境变量的读取直接使用 os 模块即可

  • 相关阅读:
    MTK Sensor越界导致的系统重启问题分析报告
    WebView兼容问题分析报告
    图片格式问题分析报告
    堆内存double free问题分析报告
    Virsualizer模块野指针问题分析报告
    libjohn hook问题分析报告
    [开发技巧]·Numpy广播机制的深入理解与应用
    [深度应用]·使用一维卷积神经网络处理时间序列数据
    [开发技巧]·Numpy中对axis的理解与应用
    [开发技巧]·HTML检测输入已完成自动填写下一个内容
  • 原文地址:https://www.cnblogs.com/chnmig/p/12118818.html
Copyright © 2011-2022 走看看