Real Python
Alexa Python Development: Build and Deploy an Alexa Skill
Become an Alexa Python developer by building and deploying your own Alexa skill, a joke bot that responds to voice commands on Amazon Alexa devices.
Posted on 24 October 2026 | 2:00 pm
Three Ways of Storing and Accessing Lots of Images in Python
Compare three ways of storing images in Python, as PNG files on disk, in LMDB, and in HDF5, with timings for reading and writing lots of images.
Posted on 24 October 2026 | 2:00 pm
A Guide to Modern Python String Formatting Tools
Explore Python's modern string formatting tools, and learn to harness f-strings and the .format() method for interpolation and formatting.
Posted on 24 October 2026 | 2:00 pm
Python String Formatting: Available Tools and Their Features
Learn how Python string formatting works with f-strings, the .format() method, and the modulo operator, plus the strengths of each tool.
Posted on 24 October 2026 | 2:00 pm
Dictionaries in Python
Learn how dictionaries in Python work: create and modify key-value pairs using dict literals, the dict() constructor, built-in methods, and operators.
Posted on 24 October 2026 | 2:00 pm
An Intro to Threading in Python
Learn how to use Python threading to run tasks concurrently, synchronize threads with locks and queues, and avoid race conditions and deadlocks.
Posted on 24 October 2026 | 2:00 pm
Quiz: A Guide to Modern Python String Formatting Tools
You can take this quiz to test your understanding of modern tools for string formatting in Python. These tools include f-strings and the .format() ...
Posted on 24 October 2026 | 12:00 pm
Quiz: Defining Your Own Python Function
In this quiz, you'll test your understanding of defining and calling Python functions. You'll revisit the def keyword, parameters, arguments, and m...
Posted on 24 October 2026 | 12:00 pm
Quiz: How to Run a Python Script
Test your understanding of how the Python interpreter works and how to run scripts from the command line, interactive mode, file managers, and IDEs.
Posted on 24 October 2026 | 12:00 pm
Quiz: Working With JSON Data in Python
In this quiz, you'll test your understanding of working with JSON in Python. By working through this quiz, you'll revisit key concepts related to J...
Posted on 24 October 2026 | 12:00 pm
Quiz: Python Threading
This is a quiz that will review topics covered in our An Intro To Threading tutorial.
Posted on 24 October 2026 | 12:00 pm
Python's property(): Add Managed Attributes to Your Classes
Use Python's property() to add managed attributes to your classes, with validation, computed values, and caching, without breaking your API.
Posted on 23 October 2026 | 2:00 pm
Sets in Python
Learn to work effectively with Python sets: define set objects, explore the supported operations, and know when sets fit your code.
Posted on 23 October 2026 | 2:00 pm
A Python AI Tool Was Just Booby-Trapped With Key-Stealing Malware
Real Python's weekly AI news for October 17–23, 2026, explained in plain language: a booby-trapped Python AI tool, a PHP security fix, and PyTorch ...
Posted on 23 October 2026 | 2:00 pm
What Is the Python Global Interpreter Lock (GIL)?
The Python GIL is a mutex that lets only one thread control the interpreter at a time. Learn how it shapes your program's performance.
Posted on 23 October 2026 | 2:00 pm
Quiz: Using Pydantic to Simplify Python Data Validation
Test your understanding of Pydantic models, fields, validators, and settings management, and see how well you can validate data in Python.
Posted on 23 October 2026 | 12:00 pm
Quiz: Get Started With Django: Build a Portfolio App
In this quiz, you'll test your understanding of Django, a fully featured Python web framework. By working through this quiz, you'll revisit the ste...
Posted on 23 October 2026 | 12:00 pm
Quiz: Sending Emails With Python
Use Python's standard library to send email through secure SMTP connections, attach files, include HTML content, and route replies.
Posted on 23 October 2026 | 12:00 pm
The Real Python Podcast – Episode #316: The Future of Python Security: Trends, Challenges, and Solutions
How is the Python ecosystem adapting to the modern landscape of software security and supply chain defense? This week on the show, we sit down with...
Posted on 23 October 2026 | 12:00 pm
Quiz: Supply Chain Security for the Age of AI-Speed Exploits
Test your grasp of Python supply chain security, from startup hooks and lock files to dependency cooldowns, agent installs, and short-lived tokens.
Posted on 22 October 2026 | 12:00 pm
Quiz: Pipenv: A Guide to the Python Packaging Tool
Test your understanding of Pipenv, from the Pipfile and Pipfile.lock to dependency resolution, dev packages, and reproducible Python builds.
Posted on 22 October 2026 | 12:00 pm
Python itertools By Example
Combine Python's itertools functions into memory-efficient pipelines as you deal cards, analyze stock data, and pick relay teams.
Posted on 21 October 2026 | 2:00 pm
Tell Your Tech Career Story: Proof, Résumés, and Interviews
Turn your experience into a clear career story with achievement stories, proof of skills, a tailored résumé, and interview practice with Mentor AI.
Posted on 20 October 2026 | 2:00 pm
Building an AI Agent With LangGraph and Python
Learn LangGraph in Python with this hands-on video course and build a stateful AI agent using state graphs, nodes, and conditional edges.
Posted on 20 October 2026 | 2:00 pm
The Real Python Podcast – Episode #315: Python Pitfalls: Common Mistakes and How to Avoid Them
What are common mistakes that Python beginners make, and how do you avoid them? Christopher Trudeau is back on the show this week with another batc...
Posted on 16 October 2026 | 12:00 pm
How to Use Python: Taking Your First Steps
Take your first steps with Python. Install it, run your first program, and work with variables, data types, loops, functions, and errors.
Posted on 13 October 2026 | 2:00 pm
The Real Python Podcast – Episode #314: Codemoo: Demonstrating How Coding Agents Work
How do you assemble the core pieces of a coding agent? How are developers defining projects through conversation and introspection? This week on th...
Posted on 9 October 2026 | 12:00 pm
Exploring the MVC Pattern in Python
Learn how the Model-View-Controller pattern organizes Python web apps, then build a small Flask app using models, views, and controllers.
Posted on 6 October 2026 | 2:00 pm
The Real Python Podcast – Episode #313: Python 3.15: Exploring the New Features
Python 3.15 is (almost*) here! Christopher Trudeau and Bartosz Zaczyński return to discuss the new version. Bartosz coordinated the series of previ...
Posted on 2 October 2026 | 12:00 pm
Community Videos
Watch Real Python's YouTube videos right here on the site, with the resources mentioned in each video and a full transcript.
Posted on 30 September 2026 | 2:00 pm
What's New in Python 3.15
Explore the new features in Python 3.15, including lazy imports, frozendict, sentinel values, a sampling profiler, and a faster JIT.
Posted on 29 September 2026 | 2:00 pm
The Real Python Podcast – Episode #312: Navigating AI in Open Source: Insights From Wagtail
How should you manage AI contributions to an open-source project? How do you measure the impact of using AI tools for development, and what generat...
Posted on 25 September 2026 | 12:00 pm
Using the Claude API in Python
Learn how to use the Claude API in Python to send prompts, control responses with system instructions, and get structured output.
Posted on 22 September 2026 | 2:00 pm
Automating EDA With fg-data-profiling
Automate exploratory data analysis by transforming DataFrames into interactive reports with one command from fg-data-profiling.
Posted on 15 September 2026 | 2:00 pm
The Real Python Podcast – Episode #311: Django Developers Survey Results & Reproducible Python Builds
What are the latest trends uncovered in the 2026 Django Developers Survey? How are Django users employing LLMs in their development process? Christ...
Posted on 11 September 2026 | 12:00 pm
Python Timer Functions
Learn how to time your Python code with the time module, then build a reusable Timer class that works as a context manager.
Posted on 8 September 2026 | 2:00 pm
The Real Python Podcast – Episode #310: Performance Engineering: Profiling and Making Apps Fast by Default
How do you plan for the performance of your Python applications? What does a performance budget entail, and where should you spend your resources? ...
Posted on 4 September 2026 | 12:00 pm
The Real Python Podcast – Episode #309: Exploring Complex Systems & Maintainable Data Science Pipelines
What are the key characteristics of complex systems, and what are practical patterns for tackling complex coding problems? Christopher Trudeau is b...
Posted on 28 August 2026 | 12:00 pm
The Real Python Podcast – Episode #308: Navigating Silent Failures in AI: Strategies for Effective Oversight
Why do AI systems silently fail? How can you set up a system that produces results while also reviewing and validating the work? This week on the s...
Posted on 21 August 2026 | 12:00 pm
The Real Python Podcast – Episode #307: Improving NumPy Performance on Free-Threaded Python
What bottlenecks were preventing NumPy from scaling on free-threaded Python? Christopher Trudeau is back on the show this week with another batch o...
Posted on 14 August 2026 | 12:00 pm
Learning Path: FastAPI: Python API Development With Light Speed
Learn FastAPI from the ground up. Build REST APIs, serve web pages with Jinja2 templates, and create a complete URL shortener project in Python.
Posted on 22 July 2026 | 12:00 pm
Learning Path: Python Game Development
Build Python games from command-line projects to 2D graphical games with turtle, Tkinter, Pygame, and Arcade.
Posted on 16 April 2026 | 12:00 pm
Learning Path: LLM Application Development With Python
Build LLM-powered applications in Python. Call model APIs, craft prompts, add retrieval-augmented generation, create AI agents, and connect via MCP.
Posted on 19 March 2026 | 12:00 pm
Learning Path: Python Coding With AI
Use AI coding assistants to write, review, and debug Python code faster. Choose an editor-based assistant like Cursor or a terminal-based one like ...
Posted on 7 December 2025 | 12:00 pm
Learning Path: Important Standard Library Modules
Explore Python standard library modules including math, datetime, JSON, CSV, regex, subprocess, and argparse through hands-on tutorials and courses.
Posted on 14 November 2024 | 12:00 pm
Learning Path: Exceptions, Logging, and Debugging
Learn Python exception handling, logging, and debugging. Work with raise, built-in exceptions, the logging module, and pdb to write reliable code.
Posted on 14 November 2024 | 12:00 pm
Learning Path: Testing and Continuous Integration
Learn how to test Python code with unittest, doctest, pytest, and mock objects. Set up continuous integration with GitHub Actions and Docker.
Posted on 14 November 2024 | 12:00 pm
Learning Path: Python Data Structures
Learn Python's built-in data structures: strings, lists, tuples, dictionaries, sets, and bytes, plus sorting, copying, and comprehensions.
Posted on 14 November 2024 | 12:00 pm
Learning Path: Create Graphical User Interfaces (GUI)
Build Python GUI applications with Tkinter, PyQt, wxPython, and Kivy. Learn layouts, event handling, threading, and database integration.
Posted on 14 November 2024 | 12:00 pm
Learning Path: Ace Your Python Coding Interview
Prepare for Python coding interviews with practice problems, tips for standing out, and resources from top PyCon talks and Python books.
Posted on 14 November 2024 | 12:00 pm