.env 導入前
# 定数を設定する
END_POINT = "★★★"
API_KEY = "★★★"
DEPLOYMENT_NAME = "★★★"
API_VERSION= "★★★"
.env 導入後
.envファイルから環境変数へインポートしてくれる「python-dotenv
」をインストールする
pip install python-dotenv
.env
ファイルを作成する
END_POINT = "★★★"
API_KEY = "★★★"
DEPLOYMENT_NAME = "★★★"
API_VERSION= "★★★"
os.getenv
を利用して、環境変数を取得する
# os, load_dotenvの参照を追加
import os
from dotenv import load_dotenv
# 環境変数をロードする
load_dotenv()
# 定数を設定する
END_POINT = os.getenv("END_POINT")
API_KEY = os.getenv("API_KEY")
DEPLOYMENT_NAME = os.getenv("DEPLOYMENT_NAME")
API_VERSION= os.getenv("API_VERSION")
質問コーナー
Q.load_dotenv
実行後、環境変数に残り続ける?
A. 残り続けない、あくまでもプログラムが実行している間だけ。
Q..env
ファイルはどこに配置すればいいの?
A.
既定では、既存の環境変数をオーバーライドせず、Python スクリプトと同じディレクトリにあるファイルを検索するか、段階的に上位で検索します。python-dotenv pypi
⇒ プロジェクトのルートフォルダに配置しておけばOK
Q.os.environ
とos.getEnv
はどちらを使ったらいいの?
A. 環境変数を動的に変更する必要がないならos.getEnv
一択。
os.environ
- 環境変数 keyが存在しない場合、Noneを返却する。
- 環境変数の取得のみ可能。
os — 雑多なオペレーティングシステムインターフェース — Python 3.13.7 ドキュメント
os.getEnv
- 環境変数の取得及び変更が可能。