Socket Programming in Python Part 1: Handling Connections

Sockets and the socket API are used to send messages across a network. They provide a form of inter-process communication (IPC). The network can be a logical, local network to the computer, or one that’s physically connected to an external network, with its own connections to other networks. The obvious example is the Internet, which you connect to with your ISP.

In this two-part series, you’ll create:

  • A simple socket server and client
  • An improved version that handles multiple connections simultaneously
  • A server-client application that functions like a full-fledged socket application, complete with its own custom header and content

By the end of part one, you’ll understand how to use the main functions and methods in Python’s socket module to write your own client-server applications, including ones with multiple connections. In part two, you’ll dive into building a custom class and handling errors.

What’s Included:

Downloadable Resources:

About Howard Francis

Howard Francis Howard Francis

Howard is an avid Pythonista and records video courses for Real Python. He has been teaching beginning programming at the college level for over 20 years in C++, Java, C#, and most recently Python.

» More about Howard

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:

Ian Currie


« Browse All Courses