_subprocess模块

时间:2012-04-26 01:28:47

标签: python subprocess

有一个名为_subprocess的模块,如that question中所示。

我能够导入它,但我没有找到任何关于它是什么以及它与subprocess的区别的文档。

这里有人知道这个模块的作用吗?

3 个答案:

答案 0 :(得分:5)

_subprocess似乎是一个特定于Windows的C扩展模块,它实现了subprocess模块正确使用的一些功能。如果您查看in the source for subprocess_subprocess仅会在if mswindows块内引用。

这是实现的细节,所以你绝对不应该在任何实际的代码中使用它(当然,一些好奇心从来都不是坏事)。

Here's the source for `_subprocess'。顶部的评论说

* support routines for subprocess module
*
* Currently, this extension module is only required when using the
* subprocess module on Windows, but in the future, stubs for other
* platforms might be added here as well.

答案 1 :(得分:3)

这是一个实现细节,存在于Windows上,但不存在于(例如)Unix系统上。你不应该使用它。

答案 2 :(得分:2)

与Python中以下划线开头的其他名称一样,这些模块通常不能直接使用。通常情况下,应该使用不带下划线的模块,就像使用subprocess一样。

这通常用于将模块实现划分为用C和纯Python编码的部分。下划线的模块是用C语言编写的,并且“在它上面”添加了一个纯Python模块,以提供高级API。