从 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 接受参数列表,可以更轻松地处理程序路径中的空格和特殊字符和论点。它还简化了错误处理并避免了潜在的 shell 相关问题。通过使用 subprocess.call,即使程序路径包含空格,您也可以可靠地从 Python 脚本执行外部程序。
以上是如何从Python执行路径中有空格的外部程序?的详细内容。更多信息请关注PHP中文网其他相关文章!