概要
例えば環境変数でコマンドの設定をする場合などに使えます (ex: PYTHONPATH や FLASK_APP、KUBECONFIG など)
環境
- macOS 11.4
- Python 3.8.3
サンプルコード
- vim msg.py
import subprocess, os
my_env = os.environ.copy()
my_env["MSG"] = "hello!"
process = subprocess.Popen(["ruby", "msg.rb"], stdout=subprocess.PIPE, env=my_env)
stdoutdata, _ = process.communicate()
print(stdoutdata)
print(process.returncode)
- vim msg.rb
puts ENV["MSG"]
ポイント
- Python 内での環境変数への値の設定は os.environ を使う
- subprocess に環境変数を渡す場合は env オプションを使う
- 結果の取得は communicate() を使う
0 件のコメント:
コメントを投稿