使用 python-dotenv 可安全管理 Python 项目中的环境变量。通过 pip install python-dotenv 安装后,在项目根目录创建 .env 文件(如 DATABASE_URL=…),并将其加入 .gitignore 防止泄露。在代码中导入 load_dotenv() 并调用以加载变量,再用 os.getenv() 获取值,注意非字符串类型需手动转换。支持指定文件路径、覆盖现有变量等进阶用法,建议在开发阶段使用,生产环境优先采用系统级配置。合理使用可提升项目安全性与可维护性。

在 Python 项目中,使用 python-dotenv 是管理环境变量的常用做法,尤其适合将敏感信息(如 API 密钥、数据库密码)从代码中分离出来。通过读取本地的 .env 文件,可以避免将配置硬编码或暴露到版本控制中。
安装 python-dotenv
首先需要安装 python-dotenv 包:
pip install python-dotenv
安装完成后,就可以在项目中加载和使用环境变量。
创建 .env 文件
在项目根目录下创建一个名为 .env 的文件,内容格式为 KEY=VALUE,例如:
立即学习“Python免费学习笔记(深入)”;
DATABASE_URL=postgresql://user:pass@localhost/mydbAPI_KEY=your_secret_api_keyDEBUG=TrueSECRET_KEY=mysecretkey123
注意:.env 文件应添加到 .gitignore 中,防止提交到代码仓库。
在代码中加载环境变量
使用 load_dotenv() 函数读取并加载环境变量:
from dotenv import load_dotenvimport os加载 .env 文件中的变量
load_dotenv()
获取变量值
database_url = os.getenv("DATABASE_URL")api_key = os.getenv("API_KEY")debug = os.getenv("DEBUG") == "True" # 注意:字符串转布尔需手动处理
os.getenv() 返回字符串或 None,如果变量不存在。对于非字符串类型(如布尔、数字),需要额外转换。
进阶用法与建议
指定路径:load_dotenv(".env.dev") 可加载不同环境的配置文件。覆盖设置:load_dotenv(override=True) 允许覆盖已存在的环境变量。与 settings 集成:可在配置模块中统一加载,例如在 Django 或 Flask 项目启动时调用一次 load_dotenv()。生产环境提醒:部署时通常使用系统级环境变量,无需依赖 .env 文件,但开发阶段非常实用。
基本上就这些。合理使用 python-dotenv 能提升项目安全性与可维护性,让配置管理更清晰。不复杂但容易忽略细节,比如类型转换和文件路径问题。
以上就是Python 使用 dotenv 管理环境变量文件的详细内容,更多请关注创想鸟其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/1381653.html
微信扫一扫
支付宝扫一扫