What's new
New tools, pages and features, newest first.
- Every tool, from any page
The Learn menu has a Tools list, and every page ends with links to all the tools and guides.
- Step through any example
Code boxes and the editor's Share menu open your code in the visualizer, and a CSV file in the editor opens in the CSV explorer.
- More than 280 libraries load on import
Pydantic, statsmodels, SymPy, NetworkX, sqlite3 and the rest of the runtime's packages load the first time you import them.
- Code boxes can ask questions
Examples that use input() wait for your answer under the code, in tutorials, exercises and program pages.
- Real asyncio and Pydantic in the tutorials
The async/await and concurrency tutorials run real asyncio, and the Pydantic tutorial ends with the library itself.
- Pygame online
Write a pygame game and play it in your browser, with on-screen keys on phones.
- Python visualizer
Run code one line at a time and watch its variables, lists and objects change.
- 20 algorithm animations
Sorting, searching, recursion and graph algorithms, step by step.
- Python error explanations
What 40 common error messages mean and how to fix them. The editor links to them when your code fails.
- Python programs with output
250 programs with their output and an explanation, plus the CBSE class 11 and 12 practical lists.
- Exercise pages
Tutorial exercises on their own pages, each with a Check button. New ones go up every two weeks.
- Python interview questions
60 common questions with short answers and code you can run.
- Regex tester
Test regular expressions with Python's own re module.
- CSV explorer
See a CSV file's columns, types and missing values, with a chart for any column.
- Plot studio
Make a matplotlib chart from your numbers and copy the code.
- Notebook viewer
Read any .ipynb file or GitHub notebook, then run it in the editor.
- Python turtle online
Turtle graphics in the browser, with PNG and GIF export, in six languages.
- The Shell tab
Python's >>> prompt under the editor, with the variables from your last run.
- Output on the page
Tutorial examples show their output before you press Run.
- More for teachers
Class lists, every tutorial exercise assignable, CBSE, GCSE and AP CSP sets, and posting assignments to Google Classroom.
- One-line embed
One script tag makes every Python code block on your site runnable.
- Sign in with Google or an emailed code
Join a class with your school email, and count for your school.
- Feedback from any page
Send a message, your code or a screenshot. A person reads every one.
- Classrooms
Create a class, assign problems and quizzes, and see who is stuck on a live board. Contests and duels too.
- Daily Python puzzle
Five "what does this print?" snippets a day, from easy to hard.
- 50 practice problems
From FizzBuzz to an LRU cache, each checked when you press Check.
- Site search
Press Ctrl+K anywhere to find a tutorial, problem or page.
- Chrome extension
A Run button on Python code in ChatGPT, Claude, Stack Overflow and GitHub.