
スポンサーリンク
Pythonで環境変数を扱うには、標準ライブラリのos
モジュールに含まれるos.environ
を利用します。本記事では、os.environ
の基本的な使い方から、実践例についても詳しく解説します。初心者から中級者まで、Pythonで環境構築やセキュアな設定管理を行いたい方に役立つ内容となっています。
os.environは環境変数へのアクセスを提供する
os.environ
は、環境変数へのアクセスを提供する辞書のようなオブジェクトで、Pythonスクリプトから実行環境に設定された環境変数を簡単に参照・設定・削除することができます。これは開発環境の切り替えや、機密情報の取り扱い、構成の自動化など、多くの場面で活躍する重要なインターフェースです。
import osprint(os.environ['USERPROFILE']) # Windowsの場合
import osprint(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 osos.environ['MY_VARIABLE'] = 'some_value'print(os.environ['MY_VARIABLE']) # => 'some_value'
ただし、この設定はPythonプログラムの実行中およびその子プロセスにのみ反映され、システム全体の環境変数を恒久的に変更するわけではありません。これは、スクリプト実行時に一時的な設定が求められるCI/CDパイプラインやテスト環境の構築などに便利です。
os.environで環境変数を削除する
設定した環境変数を削除したい場合は、del
文を使って削除できます。
import osos.environ['MY_VARIABLE'] = 'some_value'del os.environ['MY_VARIABLE']
ただし、存在しないキーを削除しようとするとKeyError
が発生するため、削除の前にキーの存在を確認するようにしましょう。
import osos.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ファイル
API_KEY=your-api-key-hereDEBUG=true
例:Pythonコードで読み込む
from dotenv import load_dotenvimport 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
を使いこなすことが重要です。プロジェクトの初期設計時から環境変数の取り扱い方針を決めておくことで、開発や運用のトラブルを未然に防ぐことができます。
プログラミング学習者にお勧めの書籍
![]() |
新品価格 |

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