Using the Python subprocess Module

Python’s subprocess module allows you to run shell commands and manage external processes directly from your Python code. By using subprocess, you can execute shell commands like ls or dir, launch applications, and handle both input and output streams. This module provides tools for error handling and process communication, making it a flexible choice for integrating command-line operations into your Python projects.

By the end of this video course, you’ll understand that:

  • The Python subprocess module is used to run shell commands and manage external processes.
  • You run a shell command using subprocess by calling subprocess.run() with the command as a list of arguments.
  • subprocess.call(), subprocess.run(), and subprocess.Popen() differ in how they execute commands and handle process output and return codes.
  • multiprocessing is for parallel execution within Python, while subprocess manages external processes.
  • To execute multiple commands in sequence using subprocess, you can chain them by using pipes or running them consecutively.

What’s Included:

Downloadable Resources:

Related Learning Paths:

About Steven Loyens

Steven is an Actuary, Economist and Engineer who found his passion for coding messing about with his Commodore 64 in the eighties. He loves understanding how things work and sharing that knowledge. He's an experienced coach and mentor.

» More about Steven

Each tutorial at Real Python is created by a team of developers so that it meets our high quality standards. The team members who worked on this tutorial are:

← Browse All Courses