ホームページ  >  記事  >  バックエンド開発  >  Python からパスにスペースを含む外部プログラムを実行するにはどうすればよいですか?

Python からパスにスペースを含む外部プログラムを実行するにはどうすればよいですか?

DDD
DDDオリジナル
2024-11-04 14:47:02438ブラウズ

How to Execute External Programs with Spaces in the Path from Python?

Python からの外部プログラムの実行

問題:

os.system を使用した外部プログラムの実行プログラム パスにスペースが含まれている場合は失敗します。プログラム パスを二重引用符でエスケープすると実行は許可されますが、パラメーターを追加するとプログラムの実行が再び失敗します。

解決策:

引用符の規則や引用符に関連する問題を回避するにはプログラム パスにスペースが含まれている場合は、subprocess モジュールを使用することをお勧めします。特に、subprocess.call 関数はプログラムを実行し、その完了を待つことができます。使用方法は次のとおりです:

<code class="python">import subprocess

# Create a list of arguments, including the program path and any arguments.
args = ['C:\Temp\a b c\Notepad.exe', 'C:\test.txt']

# Execute the program using subprocess.call.
subprocess.call(args)</code>

説明:

subprocess.call は引数のリストを受け取り、プログラム パス内のスペースや特殊文字の処理を容易にします。そして議論。また、エラー処理が簡素化され、シェル関連の潜在的な問題が回避されます。 subprocess.call を使用すると、プログラム パスにスペースが含まれている場合でも、Python スクリプトから外部プログラムを確実に実行できます。

以上がPython からパスにスペースを含む外部プログラムを実行するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。