You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python中如何使用dotenv库设置本地.env文件的环境变量?

问题原因

你调用的python-dotenv库的load_dotenv()方法仅负责将磁盘上.env文件已有的键值对加载到当前Python进程的运行时环境变量中,本身不具备修改、回写磁盘文件的能力。你通过os.environ['ORI'] = '123'修改的仅为当前进程内存中存储的临时环境变量,进程终止后就会失效,完全不会写入到磁盘的.env文件,所以打开文件看到为空是正常现象。

解决方案

如果需要将键值对持久化写入.env文件,可直接通过Python原生文件操作实现,示例代码如下:

import os
from os.path import join, dirname
from dotenv import load_dotenv

dotenv_path = join(dirname(__file__), '.env')
# 加载现有变量到运行时环境
load_dotenv(dotenv_path)

# 先修改运行时环境变量
os.environ['ORI'] = '123'

# 持久化写入到.env文件,a模式是追加保留原有内容,w模式是覆盖原有内容,按需选择
with open(dotenv_path, 'a', encoding='utf-8') as f:
    f.write(f'ORI={os.getenv("ORI")}\n')
注意事项
  • 如果要避免同一个key重复写入,可先读取.env现有内容去重、更新对应key的取值后再整体写入
  • 不要将数据库密码、API密钥等敏感信息硬编码在代码逻辑中,避免信息泄露

内容的提问来源于stack exchange,提问作者Roso Bergman

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.02 19:09:04