quobit
awesome-python-in-education

A curated list about Python in Education :snake: :mortar_board:

Last updated Jul 1, 2026
905
Stars
158
Forks
0
Issues
0
Stars/day
Attention Score
38
Language breakdown
No language data available.
Files click to expand
README

awesome-python-in-education Awesome

A curated list of resources about Python in Education

There are many ways to contribute to this project. Get started here.

Sparkline (GitHub stars velocity): Sparkline

Contents

* Interactive environments * MOOCs * Introductions and Tutorials * Data Science * Python suitability for education * Academic Papers * Reference * Mailing lists * Forums * Games, graphics and simulation * Visualization * Jupyter * IDEs * Debuggers * Coding Club books * Green Tea Press * Invent with Python series * Manning Publications * No Starch Press * O'Reilly * Packt Pub
  • Hardware - programming environment for tiny Python 3 projects, that can be embedded in web pages (using Brython)

Interactive environments

MOOCs

Introductions and Tutorials

Data Science

Exercises and Games

Reference and forums

Python suitability for education

Reference

What the fck Python? - A collection of interesting and tricky Python examples

Mailing lists

Forums

Tools and Libraries

Games, graphics and simulation

  • Jupylet - Create 2D and 3D games, graphics, live music and sound synthesizers, interactively in a Jupyter notebook.
  • PyGame
  • Pygame Zero for creating games without boilerplate
  • Python Arcade Library
  • Pyglet - a pure python cross-platform application framework intended for game development
  • Python Mode for Processing
  • PythonTurtle - A learning environment for Python programming suitable for beginners and children, inspired by Logo. Easy installer for Windows so it could be installed by children on computers without internet access.
  • A Simple Tutorial for Python's turtle.py Module
  • VPython - 3D programming
  • Pymunk - 2D physics library
  • PyPhysicsSandbox - a simple wrapper around Pymunk
  • Kivy - innovative user interfaces, such as multi-touch apps
  • PyQT 15 minute apps - 15 minute (small) desktop apps built with PyQt
  • PyQt5 tutorial - Create GUI applications with Python
  • Panda3D - game engine and framework for 3D rendering
  • Ursina Engine - game engine based on Panda3D but really easy-to-use. Great for beginners in 3D game coding.
  • gui zero - to allow children to quickly and easily create GUIs for their programs
  • Free Python Games - collection of free Python games intended for education and fun
  • Angry Birds in Python - using pygame and pymunk
  • Jappy - the app powering the http://educa.juegos/ collaborative coding platform
  • Predigame - instructional platform that teaches the basics of coding through the creation of arcade games
  • ThorPy - A GUI library for pygame
  • sc8pr - A simple framework for new and experienced Python programmers to create animations, games, and other graphics-based programs
  • pyxel - A retro game development environment in Python.
  • PySimpleGUI - Super-simple GUI to use... Powerfully customizable.
  • evennia - library and toolkit for building multi-player online text games
  • adventurelib - easy text adventures
  • PythonStdioGames - A compilation of text-based games written in Python that only use "standard i/o".
  • PyperCard - HyperCard inspired GUI framework for beginner developers in Python (doc site)
  • PyComic - A static website for generating Pythonic comics

Visualization

  • Bokeh - an interactive visualization library that targets modern web browsers for presentation.
  • VisPy - library for interactive scientific visualization that is designed to be fast, scalable, and easy to use.
  • Python Graph Gallery - showcase hundreds of charts, always providing the reproducible python code.

Jupyter

* github.com/jupyter4edu - best practices and content for teaching with Jupyter notebooks * jupyter4edu/jupyter-edu-book - open source of the "Teaching and Learning with Jupyter" book * https://jupyter4edu.github.io/jupyter-edu-book/ - "Teaching and Learning with Jupyter" book * github.com/IPython * github.com/Jupyter * github.com/JupyterHub * github.com/JupyterLab * Zero to JupyterHub - documentation for setting up a multi-user JupyterHub server * TLJH: The Littlest JupyterHub - documentation for "a simple JupyterHub distribution for a small (0-100) number of users on a single server" * jupyterhub-deploy-teaching - reference deployment of JupyterHub and nbgrader on a single server * JupyterLab Documentation
  • mybinder.org - "Binder": generate a container from a git repository (or a DOI) with repo2docker and run it in the cloud
* jupyterhub/binderhub - BinderHub is the application that powers https://mybinder.org (on k8s) * jupyter/repo2docker - generate Jupyter-enabled Docker Images from repositories * github.com/binder-examples - examples of Binder-ready (REES-compatible) Jupyter notebooks * REES: Reproducible Execution Environment Specification - specification that repo2docker uses to build a container image for a given project and its dependencies * REES Config files - requirements.txt, environment.yml, Pipfile.lock, postBuild, Dockerfile * nbgrader docs - docs for the nbgrader tool * jupyterhub/jupyterhub-deploy-teaching - reference deployment of JupyterHub and nbgrader on a single server

Hosted Jupyter notebooks

Jupyter Tools

jupytext - Jupyter Notebooks as Markdown, Julia, Python, or R scripts (that [auto-]save to and from* the configured paired formats)
  • lolviz - data-structure visualization tool for lists of lists, lists, dictionaries
  • nbTranslate - translate cells of a notebook from one language to another - Adds multi language support
  • nbautoeval - creating auto-evaluated exercises
  • nbconvert - convert Notebooks to other formats
  • nbdev - export, sync, and document notebook cells to and from regular python modules
  • nbdime - diffing and merging of Jupyter Notebooks
  • nbgallery - platform for sharing and collaborating on Jupyter notebooks
  • nbinteract - creates interactive webpages from Jupyter notebooks
  • nbscan - search for and print contents of cells in Jupyter notebooks
  • nbsphinx - Sphinx extension for publishing Jupyter Notebooks as static/JAMstack websites
  • nbtranslate - translate content of Jupyter notebook using gettext tools
  • nbtutor - visualize Python code execution (line-by-line)
  • nbval - Py.test plugin for validating Jupyter notebooks
  • notedown - Convert IPython Notebooks to markdown (and back)
  • pixiedebugger - The Visual Python Debugger for Jupyter Notebooks You’ve Always Wanted
  • pynb - Jupyter Notebooks as plain Python code with embedded Markdown text
  • rst2ipynb - convert standalone reStructuredText files to Jupyter notebook file
  • sphinxcontrib-jupyter - A Sphinx Extension for Generating Jupyter Notebooks

Jupyter resources

IDEs

Debuggers

  • pdb
  • ipdb
  • PuDB
  • pdb++ - a drop-in replacement for pdb
  • Python Linter Online - Live Syntax Checking Using Pylint while Running Python
  • PyTA - static code analysis to help students find and fix common coding errors
  • coala - linting and fixing code
  • wdb - An improbable web debugger through WebSockets
  • QuantifiedCode - a code analyis & automation platform
  • birdseye - graphical Python debugger using the AST
  • Hunter - a flexible code tracing toolkit

Conferences and videos

Books

Coding Club books

Green Tea Press

Invent with Python series

Manning Publications

No Starch Press

O'Reilly

Packt Pub

Hardware

Raspberry Pi

* Getting Started with Minecraft Pi * Create a "Whac-a-block" game in Minecraft * MagPi issues

Arduino

BBC microbit

PyBoard

ESP32

Adafruit CircuitPython

  • CircuitPython - a MicroPython fork for teaching coding with microcontrollers
  • Awesome CircuitPython - A curated list of awesome CircuitPython guides, videos, libraries, frameworks, software and resources.

License

CC0

© 2026 GitRepoTrend · quobit/awesome-python-in-education · Updated daily from GitHub