我正在用 Python 3 编写一个(有点)模块化应用程序,我想从中运行任意程序,所说的程序是在运行时指定的,不一定是 python 脚本。
所以我用例如,
subprocess.call([spam, "-i", eggs, "-o", ham])
如果spam
是一个 python 脚本,具有 shebang topython3
和可执行权限,我得到
OSError: [Errno 8] Exec format error
如果我
subprocess.call(["python3", spam, "-i", eggs, "-o", ham])
它工作正常。
你知道为什么吗?我如何在spam
不指定的情况下运行python3
?