阅读量:1
subprocess模块是Python中用于创建和管理子进程的模块。它提供了一种简单的方法来执行外部命令以及与其进行交互。以下是subprocess模块的一些常用方法和用法示例。
- run()方法:该方法用于执行外部命令,并等待命令执行完成。它返回一个CompletedProcess对象,包含了命令的执行结果。
import subprocess result = subprocess.run(['ls', '-l'], capture_output=True, text=True) print(result.stdout)
- Popen()方法:该方法用于创建一个子进程对象,可以用于执行、控制和与子进程进行交互。
import subprocess process = subprocess.Popen(['ls', '-l'], stdout=subprocess.PIPE, stderr=subprocess.PIPE, text=True) output, error = process.communicate() print(output)
- check_output()方法:该方法用于执行外部命令,并返回命令的输出结果。如果命令执行失败,则会抛出一个CalledProcessError异常。
import subprocess output = subprocess.check_output(['ls', '-l'], text=True) print(output)
- communicate()方法:该方法用于与子进程进行交互,包括向子进程发送输入数据,并获取子进程的输出结果和错误信息。
import subprocess process = subprocess.Popen(['grep', 'hello'], stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE, text=True) output, error = process.communicate(input='hello world') print(output)
以上是subprocess模块的一些常用方法和用法示例。根据具体的需求,你可以选择适合的方法来执行和管理子进程。