gpt4 book ai didi

python - 为什么从 Python 运行 PowerShell 脚本似乎有延迟?

转载 作者:太空宇宙 更新时间:2023-11-04 06:37:58 26 4
gpt4 key购买 nike

当我从 Python 启动 PowerShell 脚本时,延迟似乎大约为 45 秒,我不明白为什么。

我正在尝试从 Python 脚本运行 PowerShell 脚本(访问一些仅适用于 PowerShell 的 API)。

我尝试了很多排列组合,与使用相同命令行从命令提示符运行脚本相比,所有排列组合都会产生约 45 秒的延迟。

例如 - sample.ps1 可能会说:

echo foo

runner.py 可能会说:

import subprocess
p = subprocess.Popen([POWERSHELL, '-File', 'sample.ps1'], stdout=subprocess.STDOUT)
d = p.stdout.read()

直接运行 .ps1 脚本很快,通过 runner.py(Python 2.7,64 位机器上的 32 位)运行它会产生 45 秒的延迟。

如果我使用“os.system”或 Twisted 的内置处理工具,则会发生完全相同的事情。所以我怀疑这是 Python 解释器和 Powershell 解释器之间的一些微妙交互,可能与控制台窗口的创建或 stdin/out/err 流的处理有关? (我知道在 Windows 上不会以相同的方式“真正存在”)

最佳答案

我没有看到任何此类延迟。它非常活泼。 (这也取决于您的脚本实际执行的操作。)尝试使用 call:

from subprocess import call
call(["powershell", "sample.ps1"])

关于python - 为什么从 Python 运行 PowerShell 脚本似乎有延迟?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8138591/

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