pythonで.env
これまで環境変数は直接編集を行っていました。
しかしpythonの学習で色々な方のファイルを学習していくと
.envファイルを使用している方が多かったので、
勉強がてら使用してみました。
.envを使用すれば、環境設定へ直接追加したりしなくても
pythonプログラムの中で追加や上書き、削除が行えます。
ただし実行したpythonプログラム中でのみ有効となり、
実際の環境変数が上書きされているわけではないので、ご注意ください。
参考にさせていただいたのはこちらのサイト様です。
python-dotenvのモジュールをインポート
pip install python-dotenv
私はVSコードのターミナル上から行いました。
.envファイル(環境変数)のファイルを作成
実行を行う.pyファイルと動フォルダ内に
「.env」というファイルを作成してください。
.envファイルを開いて、
今回のプログラムの中でのみ有効な環境変数を設定します。
TEST = "aaa"
保存して閉じてOKです。
実際に動かしているコードです。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
import os from dotenv import load_dotenv # .envファイルの内容を読み込みます load_dotenv() # 自分のPCの環境変数 for i, x in os.environ.items(): print(f'{i} = {x}') # 今回追加した内容 print(".envファイル↓") print(os.environ['TEST']) |
# 自分のPCの環境変数 for i, x in os.environ.items(): print(f'{i} = {x}')
では、実際に設定している本来の環境変数を各院しています。
普通にprintで出力すると凄く読みづらいので、.items()として
出力を行っています。
下記のような形で環境変数の内容が出力されていると思います。
os.environの引数に
・TERM_PROGRAMを入力すれば「vscode」
・TERM_PROGRAM_VERSIONを入力すれば「1.65.2」
がそれぞれ返ってきます。
print(os.environ['TEST'])
では.envファイルから読み込んだTESTという引数から、設定したaaaが出力されていれば完成です。
今回はあまり恩恵を感じない内容ですが、
本番環境や練習環境などで設定をそれぞれ変更したい場合などには本領を発揮しそうですね。
以上です。
最後までお読み頂きありがとうございました!