所以我正在编写一个程序,在某一点上,必须调用一个单独的可执行文件。我正在使用subprocess.call
让我的python脚本从命令行调用所述可执行文件。问题是,在执行期间,该可执行文件会提示用户输入两次。我希望我的脚本能够提供输入的可执行文件,但我不知道该怎么做。
这是在Windows 10上,应该有所作为。
答案 0 :(得分:0)
import os
os.system("exec_name arguments")
将输入作为参数传递给可执行文件。
答案 1 :(得分:0)
您必须使用subprocess.Popen
class创建一个表示您希望稍后通过实例.communicate()
方法进行通信的子流程的实例。
这样的事情应该有效
proc = subprocess.Popen([executable_name] + args,
stdin=subprocess.PIPE, stdout=subprocess.PIPE,
stderr=subprocess.PIPE)
out, err = proc.communicate(input_str)
subprocess.check_call
做了类似的事情。