一段时间以来,我一直在尝试了解 subprocess.call
和 subprocess.run
之间的区别。我知道最后一个是 Python 3.5 上的新内容,两者都基于 subprocess.Popen
,但我还不能理解其中的区别。
原文由 Andrés Orozco 发布,翻译遵循 CC BY-SA 4.0 许可协议
一段时间以来,我一直在尝试了解 subprocess.call
和 subprocess.run
之间的区别。我知道最后一个是 Python 3.5 上的新内容,两者都基于 subprocess.Popen
,但我还不能理解其中的区别。
原文由 Andrés Orozco 发布,翻译遵循 CC BY-SA 4.0 许可协议
2 回答5.3k 阅读✓ 已解决
2 回答1.2k 阅读✓ 已解决
4 回答1.5k 阅读✓ 已解决
3 回答1.4k 阅读✓ 已解决
3 回答1.3k 阅读✓ 已解决
2 回答965 阅读✓ 已解决
1 回答1.8k 阅读✓ 已解决
subprocess.call()
的定义中明确提到:正如 Python 3.5 的 subprocess 文档 所说:
通常的做法是,当某些功能被替换时,它们不会立即被弃用,但某些版本有一个支持窗口。这有助于防止在升级语言版本时破坏旧代码。我不知道
.call()
将来是否会被替换。但根据文档,我知道它们几乎相同。