0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

.env ファイルの使い方 メモ

Posted at

.env ファイルの使い方と説明(Python)

.envファイルとは?

.env ファイルは、環境変数を定義するためのファイルです。
アプリケーションの設定情報(APIキー、データベースの接続情報など)をコードに直接書かず、.env に保存することでセキュリティや管理の利便性を向上できます。

.envファイルの基本構造

.env ファイルは通常、プロジェクトのルートディレクトリに配置し、以下のようにキーと値を KEY=VALUE の形式で記述します。

# 環境変数の定義
DATABASE_URL=mysql://user:password@localhost:3306/dbname
SECRET_KEY=your_secret_key
DEBUG=True

.env ファイルは .gitignore に追加し、GitHub などのリポジトリにアップロードしないようにしましょう。


Pythonで.envファイルを使う方法

Pythonで.env ファイルの内容を読み込むには、dotenv ライブラリ(python-dotenv)を使用します。

1. 必要なライブラリをインストール

まず、python-dotenv をインストールします。

pip install python-dotenv

2. .env ファイルを読み込む

dotenv を使って .env ファイルの環境変数をロードし、Python の os.environ から値を取得できます。

import os
from dotenv import load_dotenv

# .envファイルの内容を読み込む
load_dotenv()

# 環境変数を取得
database_url = os.getenv("DATABASE_URL")
secret_key = os.getenv("SECRET_KEY")
debug_mode = os.getenv("DEBUG")

# 結果を表示
print(f"Database URL: {database_url}")
print(f"Secret Key: {secret_key}")
print(f"Debug Mode: {debug_mode}")

補足

環境変数のデフォルト値を設定

.env に値がない場合、デフォルト値を設定することもできます。

secret_key = os.getenv("SECRET_KEY", "default_secret")

上記のようにすると、SECRET_KEY.env に定義されていない場合 "default_secret" を使います。


なぜ.envファイルを使うのか?

メリット

セキュリティ向上
・APIキーやパスワードを直接コードに書かずに済む。
・誤ってリモートリポジトリ(GitHubなど)にプライベート情報をアップロードするのを防げる。

環境ごとの設定を簡単に切り替え可能
・ローカル環境、本番環境で異なる設定を使用できる。
.env の内容を変更するだけで、アプリの動作を調整できる。

設定情報の管理が楽になる
・複数の開発者が関わる場合でも、.env.example などのサンプルを用意すれば、簡単に環境設定を共有できる。


まとめ

  1. .env ファイルに環境変数を定義する。
  2. python-dotenv をインストールする (pip install python-dotenv)。
  3. dotenv.load_dotenv().env をロードし、os.getenv() で値を取得する。
  4. .env ファイルは .gitignore に追加し、Gitにアップロードしないようにする。

この方法を使うことで、安全かつ便利に環境変数を管理できます!

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?