Python サブプロセスを使用した外部コマンドの環境の変更
変更された環境で外部コマンドを実行することは、プログラミングにおける一般的なタスクです。 Python のサブプロセス モジュールには、外部コマンドを実行するための Popen 関数が用意されており、その env パラメータを使用すると、環境ディクショナリを指定できます。
提供されるソリューションには、os.environ を使用して現在の環境のコピーを作成し、目的の環境を変更することが含まれます。変数。ただし、より効率的なアプローチは、元の環境を変更せずにコピーした新しい辞書を作成する os.environ.copy() を使用することです。
改善された解決策:
import subprocess, os my_env = os.environ.copy() my_env["PATH"] = f"/usr/sbin:/sbin:{my_env['PATH']}" subprocess.Popen(my_command, env=my_env)
os.environ.copy() を使用すると、元の環境が変更されないようにできます。これは、変更された環境が変更されている場合に特に便利です。外部コマンドのみを対象としています。このアプローチでは、手動で文字列を連結する必要もなくなり、簡潔でクリーンなソリューションが提供されます。
以上がPython の「subprocess」モジュールを使用して外部コマンドの環境を効率的に変更するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。