Skip to main content

Python SDL2 bindings

Project description


Tests PyPI - Python Version PyPI Version

PySDL2 is a pure Python wrapper around the SDL2, SDL2_mixer, SDL2_image, SDL2_ttf, and SDL2_gfx libraries. Instead of relying on C code, it uses the built-in ctypes module to interface with SDL2, and provides simple Python classes and wrappers for common SDL2 functionality.


PySDL2 is easy to install and integrate within your own projects. To install or update to the latest version, simply run one of the following commands in a terminal:

# Install latest stable version from PyPI
pip install -U pysdl2

# Install latest development verion from GitHub
pip install -U git+

Note: If installing on Python 3 on a computer where both Python 2 and 3 are installed, replace pip with pip3 in the above commands.


In order for PySDL2 to work, the binaries for SDL2 (and any SDL2 addon modules you wish to use, e.g. SDL2_mixer) need to be installed on your system. On macOS and Windows, the recommended way to install the SDL2 binaries is via the pysdl2-dll package using pip:

pip install pysdl2-dll

This will install pre-built binaries for all supported SDL2 libraries as a Python package, which PySDL2 will automatically load if available. On Linux and other Unix-like OSes, you can install the SDL2 binaries using your system's package manager (which may be out of date), or alternatively build and install the latest versions yourself from source.

The current minimum supported versions for each library are listed below:

  • SDL2 >= 2.0.5
  • SDL2_mixer >= 2.0.1 (for the sdl2.sdlmixer module)
  • SDL2_ttf >= 2.0.14 (for the sdl2.sdlttf module)
  • SDL2_image >= 2.0.1 (for the sdl2.sdlimage module)
  • SDL2_gfx >= 1.0.3 (for the sdl2.sdlgfx module)


If you just started with SDL and PySDL2, it is strongly recommended that you read through the tutorial of the documentation to learn the basics. You can find the documentation at doc/html or online at


This library is given to the public domain. There are no licensing restrictions. Please see doc/copying.rst for further details.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

PySDL2-0.9.11.tar.gz (736.0 kB view hashes)

Uploaded source

Built Distribution

PySDL2-0.9.11-py3-none-any.whl (538.5 kB view hashes)

Uploaded py3

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Huawei Huawei PSF Sponsor Microsoft Microsoft PSF Sponsor NVIDIA NVIDIA PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page