【Python】.envファイルの変数を扱う方法を解説

Pythonプロジェクトで環境変数を扱う際、.envファイルは非常に便利なツールです。

これにより、重要なAPIキーなどの機密情報をコードから分離し、安全に保つことができます。

今回は、.envをPythonで扱う方法と少しスマートな実装方法について解説します。

目次

.envを使うための3ステップ

.envを使う3ステップ
  1. python-dotenvパッケージをインストール
  2. .envファイルの変数を使いたい箇所でload_dotenv()を記述
  3. os.get("変数名")で.envファイルに記述した変数にアクセス

上記がPythonで.envファイルを使うための3ステップになります。

それぞれ以下で簡単に解説します。

Step1: python-dotenvのインストール

まず、必要なパッケージをインストールします。

ターミナルで以下のコマンドを実行してください。

pip install python-dotenv

これで、python-dotenvパッケージが使えるようになります。

Step2: load_dotenv()を記述

python-dotenvパッケージのインストールが済んだら、.envファイルに記述した変数を使いたい箇所で以下を記述します。

from dotenv import load_dotenv
load_dotenv()

Step3: os.getenv(“変数名”)で変数へアクセス

load_dotenv()の呼び出しが終わったら、あとは以下のようにして変数にアクセスできます。

from dotenv import load_dotenv
load_dotenv()

# .envにAPI_KEY=xxxxxxxxと設定済み
API_KEY = os.getenv("API_KEY")

以上の3つの手順で、簡単にPythonで.envファイルの変数が扱えるようになります。

トマトソース

APIキーなど公開したくないものは.envに格納して、上記の手順で扱うのがおすすめです。

スマートなやり方:config.pyを使う

上記の手順で問題なく.envファイルの変数にアクセスすることはできます。

ただ、.envファイルにアクセスしたい箇所にload_dotenv()を記述しないといけず少し面倒です。

なので、個人的にはconfig.pyなどのファイルを作成し、以下のように.envファイル内の変数を全て取り出しておくのがおすすめです。

import os
from dotenv import load_dotenv
load_dotenv()

# .envにそれぞれの変数を設定済み
API_KEY = os.getenv("API_KEY")
API_KEY2 = os.getenv("API_KEY2")
SECRET_KEY = os.getenv("SECRET_KEY")

こうすることで、他のファイルで.envファイル内の変数を使いたい場合に以下のようにすれば良いだけです。

from config import API_KEY2, SECRET_KEY

def setup_api():
  api = someAPI(api_key=API_KEY2, secret_key=SECRET_KEY)

config.pyに全て集約されているので、各ファイルでload_dotenv()を繰り返し呼び出す手間を省くことができます。

つまり、どこでもconfigから変数をインポートできて便利なので、かなりおすすめです。

トマトソース

めちゃくちゃ簡単ですよね。

もし、他にももっと良い方法があれば教えてください!

まとめ

この記事では、Pythonで.envファイルを使用して環境変数を管理する方法を紹介しました。

config.pyを作成することで、環境変数の読み込みを一元化し、効率的にプロジェクトを管理できるようになります。

セキュリティを保ちつつ、効率的なコード管理を実現しましょう。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次