Python Quizzes
Check your Python learning progress and take your skills to the next level with Real Python’s interactive quizzes.

We created these online Python quizzes as a fun way for you to check your learning progress and to test your skills.
Each quiz takes you through a series of questions. Some of them are multiple choice, some will ask you to type in an answer, and some will require you to write actual Python code. As you make your way through each quiz, it keeps score of which questions you answered correctly.
At the end of each quiz you receive a grade based on your result. If you don’t score 100% on your first try—don’t fret! These quizzes are meant to challenge you and it’s expected that you go through them several times, improving your score with each run.
Browse Python Quizzes: Ready to test your Python skills? Pick a quiz quiz below and jump right in, or search and filter quizzes by topic and skill level.
Interactive Quiz
Async IO in Python: A Complete Walkthrough
In this quiz, you'll test your understanding of async IO in Python. With this knowledge, you'll be able to understand the language-agnostic paradigm of asynchronous IO, use the `async`/`await` keywords to define coroutines, and use the `asyncio` package to run and manage coroutines.
Interactive Quiz
Basic Data Types in Python
Test your understanding of the basic data types that are built into Python, like numbers, strings, and Booleans.
Interactive Quiz
Beautiful Soup: Build a Web Scraper With Python
In this quiz, you'll revisit the main steps of the web scraping process. You'll learn how to write a script that uses Python's Requests library to scrape data from a website. You'll also use Beautiful Soup to extract the specific pieces of information that you're interested in.
Interactive Quiz
Context Managers and Python's with Statement
In this quiz, you'll assess your understanding of the Python with statement and context managers. By mastering these concepts, you'll be able to write more expressive code and manage system resources more effectively, avoiding resource leaks and ensuring proper setup and teardown of external resources.
Interactive Quiz
Decorators
In this quiz, you'll revisit the foundational concepts of what Python decorators are and how to create and use them.
Interactive Quiz
Defining Main Functions in Python
In this quiz, you'll test your understanding of the Python main() function and the special __name__ variable. With this knowledge, you'll be able to understand the best practices for defining main() in Python.
Interactive Quiz
Documenting Python Code: A Complete Guide
In this quiz, you'll test your understanding of documenting Python code. With this knowledge, you'll be able to effectively document your Python scripts and projects, making them more understandable and maintainable.
Interactive Quiz
Effective Testing with Pytest
In this quiz, you'll test your understanding of pytest, a Python testing tool. With this knowledge, you'll be able to write more efficient and effective tests, ensuring your code behaves as expected.
Interactive Quiz
Getters and Setters: Manage Attributes in Python
In this quiz, you'll test your understanding of Python's getter and setter methods, as well as properties. You'll learn when to use these tools and how they can help maintain encapsulation in your classes.
Interactive Quiz
How to Check if a Python String Contains a Substring
In this quiz, you'll check your understanding of the best way to check whether a Python string contains a substring. You'll also revisit idiomatic ways to inspect the substring further, match substrings with conditions using regular expressions, and search for substrings in pandas.
Interactive Quiz
How to Run Your Python Scripts
One of the most important skills you need to build as a Python developer is to be able to run Python scripts and code. Test your understanding on how good you are with running your code.
Interactive Quiz
HTTP Requests With the "requests" Library
Test your understanding of the Python "requests" library for making HTTP requests and interacting with web services.
Interactive Quiz
Implementing an Interface in Python
In this quiz, you'll test your understanding of Python interfaces and their role in software engineering. You'll learn how interfaces can help manage complexity in a growing application and how to implement them in Python.
Interactive Quiz
Linear Regression in Python
In this quiz, you'll test your knowledge of linear regression in Python. Linear regression is one of the fundamental statistical and machine learning techniques, and Python is a popular choice for machine learning.
Interactive Quiz
Logging in Python
In this quiz, you'll test your understanding of Python's logging module. With this knowledge, you'll be able to add logging to your applications, which can help you debug errors, and analyze performance.
Interactive Quiz
Python and REST APIs: Interacting With Web Services
In this quiz, you'll test your understanding of REST APIs and how to interact with them using Python. With this knowledge, you'll be able to retrieve, parse, update, and manipulate data provided by any RESTful API that you're interested in.
Interactive Quiz
Python args and kwargs: Demystified
In this quiz, you'll test your understanding of how to use *args and **kwargs in Python. With this knowledge, you'll be able to add more flexibility to your functions.
Interactive Quiz
Python Basics: Building Systems With Classes
You can use classes to build complex systems in Python. By composing classes, inheriting from other classes, and overriding class behavior, you'll harness the power of object-oriented programming (OOP).
Interactive Quiz
Python Basics: Code Your First Python Program
With Python installed, you’re ready ready to start coding! It's time to write your first Python program.
Interactive Quiz
Python Basics: Conditional Logic and Control Flow
With conditional logic, you can write programs that perform different actions based on different conditions. Paired with functions and loops, conditional logic allows you to write complex programs that can handle many different situations.
Interactive Quiz
Python Basics: Dictionaries
Python dictionaries, like lists and tuples, store a collection of objects. However, instead of storing objects in a sequence, dictionaries hold information in pairs of data called key-value pairs.
Interactive Quiz
Python Basics: File System Operations
The pathlib module allows you to carry out file path operations with Python. These operations include creating, iterating over, searching for, moving, and deleting files and folders.
Interactive Quiz
Python Basics: Finding and Fixing Code Bugs
Logic errors occur when an otherwise valid program doesn't do what was intended. They cause unexpected behaviors called bugs. Removing bugs is called debugging, and a debugger is a tool that helps you hunt down bugs and understand why they're happening.
Interactive Quiz
Python Basics: Functions and Loops
Functions break code into smaller chunks and are great for defining actions that a program will execute several times throughout your code. Instead of writing the same code each time the program needs to perform the same task, just call the function!
Interactive Quiz
Python Basics: Installing Packages With pip Quiz
Even though Python is famous for coming with batteries included, you'll still find yourself in need of a third-party library from time to time. You can install such packages with pip.
Interactive Quiz
Python Basics: Modules and Packages
You can build an application by putting related code into separate files called modules. Then, you can use the import statement to use modules in another file.