環境構築
Python は 3.3 からvirtualenvを取り込んでvenvとして標準で使えるようになりました。
例えばVENVという名前の仮想環境を作りたいのなら以下のコマンドでいけます。
python -m venv .venv --prompt VENVVScode だとPythonのプラグインを入れればvenvにも対応して Workspace を開いたタイミングでvenvを有効化してくれます。
VScode で自動読み込み
VScode で Workspace に.venvが含まれる場合は自動で認識して仮想環境を有効化してくれる、とある。
が、やってみると
環境変数
秘匿にしておきたい鍵などはローカル環境では.envに書いておき、サーバで動かす際にはENVIRONMENT VALUEみたいな設定から値を設定することが多いです。
例えば、以下のような環境変数が書けます。
CLIENT_SECRET=1234567890環境変数は全て文字列として扱われるのでダブルクオーテーションは不要です。
これを読み込むための Python のコードは以下のとおりです。
import osfrom dotenv import load_dotenv
load_dotenv()
if __name__=="__main__": print(os.environ.get('CLIENT_SECRET'))このコードの意味については以下で解説します。
os.environ
これはシステムの環境変数を読み込むコマンドなので、これだけを使っても.envの中身を読み込むことはできません。なぜなら、.envはあくまでもローカルの環境変数だからです。
よって、.envの中身を一時的にシステムの環境変数に追加する必要があります。
pyhton-dotenv
python-dotenvは.envに書き込まれた内容をシステム環境変数に読み込みます。
よって、os.environとpython-dotenvを組み合わせることで Python で.envのデータを読み込むことができるようになるわけです。