Python _子流程模块

Python _子流程模块,python,subprocess,Python,Subprocess,有一个名为\u subprocess的模块,如中所示 我能够导入它,但是我没有找到任何关于它是什么以及它与子流程有何不同的文档 这里有人知道这个模块做什么吗?这是一个实现细节,在Windows上提供,但在Unix系统上没有(例如)。您不应该使用它。\u子流程似乎是一个特定于Windows的C扩展模块,它实现了子流程模块本身使用的一些功能。如果查看,\u子流程仅在mswindows块中引用 这是实现的一个细节,因此您绝对不应该在任何实际代码中使用它(当然,有些好奇从来都不是坏事) 。上面的评论说

有一个名为
\u subprocess
的模块,如中所示

我能够导入它,但是我没有找到任何关于它是什么以及它与
子流程
有何不同的文档


这里有人知道这个模块做什么吗?

这是一个实现细节,在Windows上提供,但在Unix系统上没有(例如)。您不应该使用它。

\u子流程
似乎是一个特定于Windows的C扩展模块,它实现了子流程模块本身使用的一些功能。如果查看,
\u子流程
仅在mswindows块中引用

这是实现的一个细节,因此您绝对不应该在任何实际代码中使用它(当然,有些好奇从来都不是坏事)

。上面的评论说

* 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.

与Python中以下划线开头的其他名称一样,这些模块通常不打算直接使用。通常有一个没有下划线的模块应该使用,就像
子流程
一样


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

这样,C实现应该更快,不是吗?它提供了最好的两个方面。底层C模块速度很快,但只实现了一个围绕C函数的薄型包装器。Python模块然后用pythonicapi公开了这一点,并添加了性能不关键或可以在Python中更容易实现的内容。您可以直接使用底层模块,但它将更难使用,功能有限,Python模块也同样快(因为它将使用C模块来完成实际工作)。