Python: 从特定的 .env 文件获取 env 变量的值

Python: Get value of env variable from a specific .env file

在 python 中,有没有办法从特定的 .env 文件中检索环境变量的值?比如我有多个.env文件如下:

.env.a .env.a ...

我在 .env.b 中有一个名为 INDEX=4 的变量。

我尝试通过执行以下操作接收 INDEX 的值:

import os

os.getenv('INDEX')

但是这个值returnsNone.

有什么建议吗?

这是 ConfigParser or ConfigObj 的工作。 ConfigParser 内置于 Python 标准库中,但缺点是它确实需要部分名称。以下是 Python3。如果您仍在使用 Python2,请使用 import ConfigParser

import configparser
config = configparser.ConfigParser()
config.read('env.b')
index = config['mysection']['INDEX']

ConfigParser 的 env.b 是

[mysection]
INDEX=4

并使用 ConfigObj:

import configobj
config = configobj.ConfigObj('env.b')
index = config['INDEX']

ConfigObj 的 env.b 是

INDEX=4

Python 有一个名为 python-dotenv 的特定包,用于使用存储在 .env 文件中的密钥。 以下是我们如何在 .env 文件中使用密钥。首先,在 .env 文件中创建一个这样的密钥

demokey=aaa2134

要在 python 文件中加载此密钥,我们可以使用此代码:

from dotenv import load_dotenv
load_dotenv()
import os
x = os.getenv("demokey")
print(x)