Pythonプロジェクト開発において、環境変数の管理は欠かせません。
その扱いが難しく感じることもあるでしょう。
そんな時に役立つのが「python-dotenv」です。
このライブラリを使えば、環境設定ファイルを簡単に読み込み、プロジェクトの設定管理がスムーズになります。
本記事では、python-dotenvについて初心者にも分かりやすいステップで解説します。
これを読めば、python-dotenvを使って開発効率を大幅に向上させることができるようになります。
本記事の内容
- python-dotenvとは?
- python-dotenvのインストール
- python-dotenvの動作確認
それでは、上記に沿って解説していきます。
python-dotenvとは?
python-dotenvは、環境変数の管理を簡単にするためのライブラリです。
プロジェクトの設定や秘密情報をコード内にハードコーディングする代わりに、
.envファイルに保存し、実行時にこれらの情報を読み込むことができます。
この手法により、開発、テスト、本番環境間での設定の切り替えが容易になります。
セキュリティリスクを軽減しつつ、設定値の管理をより柔軟に行うことができます。
2014年にリリースされて以降、2023年の1.0.0まで定期的に更新されていました。
そして、2024年1月末に久しぶりに更新が行われています。
python-dotenvのインストール
python-dotenvのインストールは、以下のバージョンがサポート対象になっています。
定期的にメンテされていることが、よくわかりますね。
このようなライブラリは、安心して利用できます。
そして、python-dotenvはOSを問わずにインストール可能です。
そんなpython-dotenvのインストールコマンドは、以下となります。
pip install python-dotenv
インストールは、一瞬で終わります。
python-dotenvの動作確認
python-dotenvの動作確認を行います。
そのためには、まずはenvファイルの作成からです。
.env
MY_SECRET_KEY='秘密のカギ'
.envファイルを設置します。
基本的には、.envファイルはプロジェクトのルートディレクトリに設置することになります。
では、次の.envファイルを読み込むスクリプトを用意します。
load_env.py
from dotenv import load_dotenv import os # 環境変数の読み込み load_dotenv() # 環境変数を使用 my_secret_key = os.getenv('MY_SECRET_KEY') print(f'MY_SECRET_KEY: {my_secret_key}')
基本的に、load_dotenv()のパス指定は不要です。
load_env.pyが、サブディレクトリにあっても問題ありません。
ただし、サブディレクトリ内に.envファイルを設置してはいけません。
この場合は、サブディレクトリ内(最も身近な)の.envファイルが読み込まれます。
そもそも、プロジェクト内に.envファイルが複数存在すること自体はNGですけどね。
通常は、プロジェクト内に1個しか.envファイルはありません。
もし複数の.envファイルを利用したい場合は、次のようにパス指定ができます。
# 開発用の環境設定ファイルを読み込む場合 load_dotenv(dotenv_path='../development.env') # 本番用の環境設定ファイルを読み込む場合 # load_dotenv(dotenv_path='../production.env')
では、コードを実際に動かしてみましょう。
動かした結果、次のようにコンソールに表示されます。
MY_SECRET_KEY: 秘密のカギ
以上、python-dotenvの動作確認を説明しました。