使用 Subprocess 通过用户输入调用 Python 脚本
在 Python 中,你可能会遇到想要执行脚本的场景(参考如“a.py”),提示用户输入并生成 JSON 格式的输出。要使用 Python 的子进程模块从另一个脚本(名为“b.py”)自动执行此脚本,请按照下列步骤操作:
导入必要的模块:
<code class="python">import os import sys from subprocess import check_output</code>
确定路径到要执行的脚本(“a.py”):
<code class="python">script_path = os.path.join(get_script_dir(), 'a.py')</code>
使用 check_output() 函数执行“a.py”并为其提供输入:
<code class="python">output = check_output([sys.executable, script_path], input='\n'.join(['query 1', 'query 2']), universal_newlines=True)</code>
此命令执行以下操作:
通过以这种方式提供输入,您可以有效地模拟用户与脚本的交互。现在可以根据需要在“b.py”脚本中使用输出。
其他替代方案
以上是如何使用子进程自动执行用户输入并从 Python 脚本检索 JSON 输出?的详细内容。更多信息请关注PHP中文网其他相关文章!