<分区>
subprocess
模块中的主要类名称为Popen
,代表一个子进程。 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/