python - 为什么 subprocess.Popen 类没有命名为 Subprocess?

标签 python subprocess

<分区>

subprocess 模块中的主要类名称为Popen,代表一个子进程。 Popen 听起来像是有人试图强制名称遵循某种函数命名格式,而不是选择一个实际代表对象的名称。有谁知道为什么选择它而不是简单的东西,比如 Subprocess

最佳答案

现在,我并不是说这是世界上最伟大的名字,但这是我理解的想法。

最初,popen 系列位于 os 模块中,是古老的 posix popen 的实现。转移到 subprocess 模块本来是重命名它们的好时机,但我想保留 Popen 可以让那些长期使用 python 甚至使用古老的 posix 函数的人更容易在文档中找到它们。

从最早的 posix 化身开始,Popen 一直意味着打开一个进程,并允许您像文件一样从它的 stdio 读取和写入。因此,Popen 的助记符是它是 ProcessOpen 的缩写,试图在某种程度上看起来像打开。

关于python - 为什么 subprocess.Popen 类没有命名为 Subprocess?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38197/

相关文章:

python - 在Python子进程中,使用Popen()和check_output()有什么区别?

Python、solr 海量查询 : need some suggestions

python - ESPN.com Python 网页抓取问题

python - 如何在(py)curl 中获取 HTTP 状态消息?

python - 如何使用Python检查字符串是否是有效的shell命令?

python - 如何与外部Python进程通信? (不是子进程)

python - 如何从 Python 异步运行外部命令?

python - 一对一读取子进程输出的多字节字符

python - 为什么 psycopg2 写入需要这么长时间?

python - 向 QTextEdit 添加多行 PyQt