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

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


肥皂起泡泡
浏览 214回答 3
3回答

慕码人8056858

现在,我并不是说这是世界上最伟大的名字,但这是我所理解的想法。最初,popen系列位于os模块中,并且是古老的posix popen的实现。转移到子进程模块是重命名它们的最佳时机,但是我想保留Popen可以使他们在python中拥有悠久的历史,甚至是古老的posix函数的文档更容易找到。从其最早的posix化身开始,Popen一直旨在打开一个Process,并允许您像文件一样从其stdio进行读写。因此,助记符Popen是ProcessOpen试图在某种程度上看起来像是开放的简称。

茅侃侃

subprocess.Popen替换os.popenXPOSIX函数组(历史悠久)。我想这个名字Popen使习惯于旧功能的人们更有可能找到并使用新功能。子流程的PEP(PEP 324)对模块名称进行了一些讨论,但对class却没有进行讨论Popen。该执行点的名单(Python的增强建议)一般,如果你正在寻找的Python的功能原理,以一个很好的开端。

catspeake

我想选择这个名称是因为该功能subprocess要替换的功能以前是在os模块中os.popen。甚至可能存在自动进行两者之间迁移的方法。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python