gpt4 book ai didi

python - 如何让 Python 程序处理 here 文档?

转载 作者:行者123 更新时间:2023-11-28 22:05:24 25 4
gpt4 key购买 nike

我已经编写了一个 Python 包装器 (pyprog) 来运行一个程序 (someprogram),如下所示:

...do some setup stuff in Python...
print("run [y=yes]")
CHOICE=input()
...do some setup stuff in Python...
if CHOICE == "y":
status=subprocess.call(["someprogram"])
sys.exit(status)

用户想要使用 shell 脚本来运行程序并使用如下文档为其提供输入:

#!/bin/sh
pyprog > pyprog.log << EOF
y
file1
file2
EOF

有没有一种方法可以生成子进程,以便 here 文档可以工作(“y”被 Python input() 使用,而“file1”和“file2”继续作为某个程序的标准输入)?现在,Python input() 接受“y”,但其余部分消失了。

最佳答案

您需要将 sys.stdin 连接到调用的 stdin

status=subprocess.call(["someprogram"], stdin=sys.stdin)

关于python - 如何让 Python 程序处理 here 文档?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5435866/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com