Python-os.popen和subprocess.popen有什么区别?

Python-os.popen和subprocess.popen有什么区别?,process,python,Process,Python,Python-os.popen和subprocess.popen有什么区别?进程功能被认为是过时的。Python2.4中引入了子流程模块,作为与子流程相关的几个旧模块和函数的统一、更强大的替代品。它们被列为: os.system os.spawn* os.popen* popen2.* 命令。* os.popen在Python2.6中被弃用(但有趣的是,在Python3中它并没有被弃用,其中)。文档中有一段关于//,如果操作系统进程功能越来越过时,那么子进程中的哪些新技术取代了方法,如os.

Python-os.popen和subprocess.popen有什么区别?

进程功能被认为是过时的。Python2.4中引入了
子流程
模块,作为与子流程相关的几个旧模块和函数的统一、更强大的替代品。它们被列为:

  • os.system
  • os.spawn*
  • os.popen*
  • popen2.*
  • 命令。*

os.popen
在Python2.6中被弃用(但有趣的是,在Python3中它并没有被弃用,其中)。文档中有一段关于

//,如果操作系统进程功能越来越过时,那么子进程中的哪些新技术取代了方法,如
os.getcwd()
os.chdir()
,以及
os.path
?@NathanBasanese,这些都不是进程功能。
子流程
模块只是关于子流程的,它不会取代整个
操作系统
模块。@techtonik这是真的,我添加了一些信息。
os.popen
在Python3中不受欢迎的原因可能是Python3中的性能-@anaolytechtonik,它是使用
子流程.popen
实现的,因此,它可能会更慢,而且绝对没有那么强大。