2008-09-01 59 views

回答

7

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

最初,popen家族是在os模块中,并且是一个令人尊敬的posix popen的实现。移动到子进程模块本来是重新命名它们的好时机,但我想保留Popen可以更容易地找到那些在python中拥有悠久历史的人员的文档,甚至可以在那些文档中找到令人敬畏的posix函数。

从它最早的posix化身,Popen一直打算打开一个进程,并允许您读取和写入它的stdio像一个文件。因此,Popen的助记符是ProccesOpen的简写,用于尝试某种看似开放的类型。

-1

我想选择这个名字是因为功能subprocess正在取代之前在os模块中作为os.popen函数。甚至可以有两种方法来实现两者之间的迁移自动化。

5

subprocess.Popen代替os.popenX POSIX函数组(历史悠久)。我想Popen这个名称使旧习惯的人更容易找到并使用新功能。

PEP for subprocess (PEP 324)对模块的名称有一点点的讨论,但对Popen没有。如果您正在寻找Python功能的基本原理,那么list of PEPs(Python增强提议)通常是一个很好的开始。