【Python】環境変数の追加・参照・削除|os.environの使い方

【Python】環境変数の追加・参照・削除|os.environの使い方

当ページのリンクには広告が含まれています。

記事の文字数:1635

Pythonで環境変数を扱うにはos.environを使用します。本記事ではos.environの基本から、環境変数の追加・取得・削除方法を紹介!.envファイルの読み込み方法(load_dotenv)まで、実用例を交えてわかりやすく解説します。


スポンサーリンク

Pythonで環境変数を扱うには、標準ライブラリのosモジュールに含まれるos.environを利用します。本記事では、os.environの基本的な使い方から、実践例についても詳しく解説します。初心者から中級者まで、Pythonで環境構築やセキュアな設定管理を行いたい方に役立つ内容となっています。


os.environは環境変数へのアクセスを提供する

os.environは、環境変数へのアクセスを提供する辞書のようなオブジェクトで、Pythonスクリプトから実行環境に設定された環境変数を簡単に参照・設定・削除することができます。これは開発環境の切り替えや、機密情報の取り扱い、構成の自動化など、多くの場面で活躍する重要なインターフェースです。

環境変数の取得(Windowsの場合)
import os
print(os.environ['USERPROFILE']) # Windowsの場合
環境変数の取得(Unix系の場合)
import os
print(os.environ['HOME']) # Unix系OSの場合

os.environは辞書のように振る舞うため、.get()メソッドを使用して柔軟に操作することができます。

import os
# 安全に取得する方法(キーが存在しない可能性を考慮)
home_dir = os.environ.get('HOME', '/default/path')
print(f"ホームディレクトリ: {home_dir}")

このようにしておくと、実行環境によって環境変数が未設定でもデフォルト値を使用できるため、コードの堅牢性が高まります。


os.environで環境変数を追加・参照する

Python内で一時的に環境変数を設定することも可能です。設定はos.environに代入するだけで行えます。

import os
os.environ['MY_VARIABLE'] = 'some_value'
print(os.environ['MY_VARIABLE']) # => 'some_value'

ただし、この設定はPythonプログラムの実行中およびその子プロセスにのみ反映され、システム全体の環境変数を恒久的に変更するわけではありません。これは、スクリプト実行時に一時的な設定が求められるCI/CDパイプラインやテスト環境の構築などに便利です。


os.environで環境変数を削除する

設定した環境変数を削除したい場合は、del文を使って削除できます。

import os
os.environ['MY_VARIABLE'] = 'some_value'
del os.environ['MY_VARIABLE']

ただし、存在しないキーを削除しようとするとKeyErrorが発生するため、削除の前にキーの存在を確認するようにしましょう。

import os
os.environ['MY_VARIABLE'] = 'some_value'
if 'MY_VARIABLE' in os.environ:
del os.environ['MY_VARIABLE']
print("環境変数MY_VARIABLEを削除しました")
else:
print("MY_VARIABLEは存在しません")
if 'MY_VARIABLE2' in os.environ:
del os.environ['MY_VARIABLE2']
print("環境変数MY_VARIABLE2を削除しました")
else:
print("MY_VARIABLE2は存在しません")

os.environ実践例:APIキーや秘密鍵情報の管理

多くの実運用アプリケーションでは、APIキーやデータベースの認証情報、シークレットキーなど、コード内に直接記述すべきでない情報を環境変数で安全に管理します。

import os
API_KEY = os.environ.get('API_KEY')
if not API_KEY:
raise ValueError("API_KEYが環境変数として設定されていません")

このようにすることで、Gitなどのバージョン管理システムに秘密情報が含まれないようになり、セキュリティが強化されます。また、.envファイルとpython-dotenvなどのツールと併用することで、ローカル開発環境と本番環境で異なる設定を簡単に切り替えられるようになります。

.envファイルとload_dotenvの活用

.envファイルは、環境変数をキーと値の形式で記述するテキストファイルです。これをPythonで読み込むには、python-dotenvライブラリを使用し、load_dotenv()を呼び出します。

例:.envファイル

.env
API_KEY=your-api-key-here
DEBUG=true

例:Pythonコードで読み込む

from dotenv import load_dotenv
import os
# .envファイルを読み込む
load_dotenv()
# 読み込んだ環境変数を使用
api_key = os.environ.get('API_KEY')
if not api_key:
raise ValueError("API_KEYが読み込めませんでした")
print(f"APIキー: {api_key}")

この方法を使えば、開発チーム全体で安全に設定を共有でき、環境ごとの切り替えも簡単になります。.envファイルは .gitignore に追加してバージョン管理対象から除外するのが一般的です。

os.environまとめ

  • os.environはPythonで環境変数を操作するためのインターフェースです。
  • 環境変数の取得・設定・削除が簡単にでき、プロセス内で完結します。
  • APIキーや接続情報などの機密情報をコードから切り離して管理するのに非常に便利です。
  • .envとの併用により、柔軟で拡張性のある設定管理が可能です。

Pythonで安全かつ効率的に構成管理を行うには、os.environを使いこなすことが重要です。プロジェクトの初期設計時から環境変数の取り扱い方針を決めておくことで、開発や運用のトラブルを未然に防ぐことができます。

プログラミング学習者にお勧めの書籍

独学で身につけるためのプログラミング学習術: Ver.5

新品価格
¥980から
(2025/4/22 21:15時点)


以上で本記事の解説を終わります。
よいITライフを!
Scroll to Top