2017/03/14更新

[Python] 環境変数を扱う

このエントリーをはてなブックマークに追加      

こんにちは、@yoheiMuneです。
今日はPythonでの、環境変数の設定と取得する方法をブログに書きたいと思います。
画像

目次




環境変数の設定と取得

環境変数は、os.environから扱うことができます。
import os

# 環境変数を設定する
os.environ["PYTHON_ENV"] = "local"

# 環境変数を読み取る
os.environ["PYTHON_ENV"] # => 'local'
# または
os.environ.get("PYTHON_ENV") # => 'local'
と、以上です。簡単ですね。



使いどころ

Pythonで環境変数を設定/取得する目的として、よく使うものはアプリケーションの環境の切り替え(本番 / 開発 / テスト / など)です。例えば以下のように使い分けます。
# ローカルで使う場合

# app.py
from flask import Flask

app = Flask(__name__)

# ... 省略 ...

if __name__ == "__main__":

    # 環境変数を設定する.
    import os
    os.environ["PYTHON_ENV"] = "local"

    app.run(debug=True)
# 本番で使う場合

# app.wsgi
import os
os.environ["PYTHON_ENV"] = "production"

from app import app as application
など、実行環境に合わせて環境変数を変えることで、例えば以下のように設定ファイルの読み込みを切り替えます。
# 設定ファイルの読み込みを切り替える例
def get_config(key):
    env = os.environ.get("PYTHON_ENV")
    with open("./config/%s.json" % env) as f:
        return json.load(f)[key]
このようにすると簡単に環境別の処理ができるので、非常に便利です。



最後に

どの言語でも環境変数の扱いは大切ですが、Pythonでも使い方が簡単でいいですね。Pythonについてはほぼ毎日書いていて、ブログに書きたいことが溜まってきましたw。少しずつでもアウトプットできたらと思います。

最後になりますが本ブログでは、Linux・Node.js・Python・フロントエンド・インフラ・Go言語・開発関連・Swift・Java・機械学習など雑多に情報発信をしていきます。自分の第2の脳にすべく、情報をブログに貯めています。気になった方は、本ブログのRSSTwitterをフォローして頂けると幸いです ^ ^。

最後までご覧頂きましてありがとうございました!





こんな記事もいかがですか?

RSS画像

もしご興味をお持ち頂けましたら、ぜひRSSへの登録をお願い致します。