jiay 发表于 2017-4-26 12:47:18

Python实战之子进程

  最近做一个小工具需要用到Python的字进程,看了一下Python的API,subprocess模块可以就可以实现,并且还挺简单
  要实现一个简单的自进程,只需要
  import sys, os, subprocessp = subprocess.Popen(["ls", "-l"], shell=False, stdin=None, stdout=None, stderr=None)print p.pidprint p.returncode
  此时,pid将是子进程的ID号,如果子进程正常推出,returncode将会是None。
  也可以使用以下代码创建子进程
  import sys, os, subprocessretcode=subprocess.call(["ls", "-l"], shell=False, stdin=None, stdout=None, stderr=None)print retcode
  此时,如果子进程正常推出,retcode将会是0。
  另外,如果期望不要输出创建出来的子进程的打印信息,可以将方法参数中的stdout和stderr设置为subprocess.PIPE。
  以下是一个小例子,创建一个子进程p1,然后再创建一个子进程p2用来结束p1的执行。
  import sys, os, subprocessp1 = subprocess.Popen(["sleep", "60"], shell=False, stdin=None, stdout=None, stderr=None)print p1.pidprint p1.returncodep2 = subprocess.Popen(["kill", str(p1.pid)], shell=False, stdin=None, stdout=None, stderr=None)print p2.pidprint p2.returncode
页: [1]
查看完整版本: Python实战之子进程