python-dotenv
概述
在Python开发中,为了确保应用程序配置的安全性和可维护性,通常会将敏感信息(如数据库密码、API密钥等)存储在环境变量中。python-dotenv是一个方便的库,可以帮助开发者在开发和生产环境中轻松地加载环境变量。
python-dotenv是一个简单的Python库,可以从
.env
文件中读取环境变量并将其添加到操作系统的环境变量中。.env
文件通常用于存储环境变量,这样可以方便地在项目中管理敏感信息或其他配置,尤其是在不同的环境(开发、测试、生产)中。
特性:
简单易用:python-dotenv 提供了简单的API,使得加载环境变量变得非常容易。
与项目结构灵活配合:可以将 .env 文件放置在项目的根目录或其他位置,并指定加载的文件路径。
方便管理敏感信息:通过将敏感信息如 API 密钥等存储在 .env 文件中,不必明文存储在代码中,增加安全性。
安装python-dotenv
首先需要安装python-dotenv
,可以使用pip
来安装:
pip install python-dotenv==1.0.1
创建.env
文件
在项目根目录下创建一个名为 .env
的文件,并在里面定义你的环境变量,例如:
API_URL=my_secret_api_url
API_KEY=my_secret_api_key
在Python代码中使用
在Python代码中,需要使用python-dotenv来加载.env
文件中的环境变量。
import os
# 用于加载环境变量
from dotenv import load_dotenv
# 加载 .env 文件中的环境变量
load_dotenv()
# 可以通过os.getenv()方法访问环境变量
api_url = os.getenv("API_URL")
api_key = os.getenv("API_KEY")
print(api_url)
print(api_key)
在Flask中使用
如果正在使用Flask框架,可以将python-dotenv集成到应用程序中。
from flask import Flask
from dotenv import load_dotenv
import os
# 加载 .env 文件中的环境变量
load_dotenv()
app = Flask(__name__)
# 从环境变量中获取配置
app.config['API_URL'] = os.getenv('API_URL')
app.config['API_KEY'] = os.getenv('API_KEY')
@app.route('/')
def home():
return 'Hello, Flask with dotenv!'
if __name__ == '__main__':
app.run()
在Django中使用
如果正在使用Django框架,也可以很容易地将python-dotenv集成到项目中。在Django项目的 settings.py
文件中加载环境变量。
import os
from dotenv import load_dotenv
# 加载 .env 文件中的环境变量
load_dotenv()
# 从环境变量中获取配置
API_URL = os.getenv('API_URL')
API_KEY= os.getenv('API_KEY')