python - 使用 Python 和 dotenv 更改保存在 .env 文件中的环境变量
问题描述
我正在尝试使用 python 更新 .env 环境变量。我os.environ
可以查看和更改本地环境变量,但我想更改 .env 文件。使用python-dotenv
我可以将 .env 条目加载到本地环境变量中
.env 文件
key=value
测试.py
from dotenv import load_dotenv, find_dotenv
load_dotenv(find_dotenv())
print(os.environ['key']) # outputs 'value'
os.environ['key'] = "newvalue"
print(os.environ['key']) # outputs 'newvalue'
.env 文件
key=value
.env 文件没有改变!仅更改了本地环境变量。我找不到任何有关如何更新 .env 文件的文档。有谁知道解决方案?
解决方案
import dotenv
dotenv_file = dotenv.find_dotenv()
dotenv.load_dotenv(dotenv_file)
print(os.environ["key"]) # outputs "value"
os.environ["key"] = "newvalue"
print(os.environ['key']) # outputs 'newvalue'
# Write changes to .env file.
dotenv.set_key(dotenv_file, "key", os.environ["key"])
推荐阅读
- python - ValueError:无法将字符串转换为浮点数:Python中的“lisans”
- ios - 检查用户的 Spotify 库中是否存在歌曲
- python - 带有函数和 if/break 语句的 while 循环?
- linux - 静态精灵图像设置的段 %fs 在哪里?
- r - 使用列名作为 ggplot 的 x
- c - 如何只允许浮点数到小数点后两位
- ios - 如何创建 cocoapod 框架并向其中添加文件?
- ios - 如何在水平方向添加节标题
- ios - Siesta-Swift:有没有办法查明 Resource.latestData 是否发生了变化?
- python - PyLint 在 Visual Studio 代码上显示大量错误