Five-Project Series

Explore Python Fundamentals, Part 1 you own this product

basics of Python variables • basics of a Python “shell” such as Jupyter Notebook • define a function and class
skills learned
understand variables and whether they are containers or labels • use the id( ) function • add functionality to a pricing application • create a class using type( ) • add bound methods to a class • monkey patch a class after creation • write a Python class to manage network connections • explore ways to access class variables • create class methods using Python’s system of inheritance • develop classes for a video game using Python's multiple inheritance to create mix-ins • build a data analysis program • use Python iteration protocol in creating iterables and an iterator using a generator function
Naomi Ceder
5 weeks · 1-3 hours per week average · BEGINNER

In this series of liveProjects, you'll work out your Python skills and form sound mental models of fundamental aspects of Python. Cracking these simple challenges will improve your ability to effectively reason about Python code, and speed up your mastery of the language.

These projects are designed for learning purposes and are not complete, production-ready applications or solutions.

here's what's included

Project 1 Variables
In this liveProject, you’ll help out a new Python developer with some mysterious bugs in their code. To unravel their issues, you’ll explore two different models for the behavior of Python variables and write some code that will either support or refute those models. This will help you reason about how variables behave in Python in regards to both mutable and immutable objects.
$29.99 FREE
try now
Project 2 Objects and Methods
In this liveProject, you’ll take on the task of extending a pricing application. You’ve just hit your first speed bump of needing to add functionality to the class that manages prices. However, that class is used elsewhere and you can’t get permission to change it. Your challenge is to implement a “monkey patch”—adding methods to the class at runtime—by experimenting with Python-bound methods.
$29.99 $17.99
add to cart
Project 3 Class Methods and Variables
In this liveProject, you’ll write a Python class to manage network connections to your server. You want your class to track the port number and the connections, but instance data is, by definition, not associated with your class. Your challenge is to explore and determine the best ways to associate data with a class and learn how to use a class method.
$29.99 $17.99
add to cart
Project 4 Inheritance
In this liveProject, you’ll explore how inheritance works in Python through developing classes that might be used in a simple video game. Your game follows animal characters moving through an obstacle course, with different movement styles for wolves, bears, eagles, ducks, frogs, and trout. In order to avoid having to repeat your code between characters, you’ll create some base classes and inherit from them. You’ll see how to inherit from more than one class at a time, and discover use cases for multiple inheritance.
$29.99 $17.99
add to cart
Project 5 Iteration
In this liveProject, you’ll experiment with how iteration works in Python. You’re building a data analysis program that needs to iterate over a given number of Fibonacci numbers. To help out, you’ll construct an object that can be iterated over in a for loop or list comprehension that provides the Fibonacci series.
$29.99 $17.99
add to cart

project author

Naomi Ceder
Naomi Ceder is the former chair of the Python Software Foundation. She has been learning, using, and teaching Python since 2001.


This liveProject is for both new and experienced Python programmers who want to improve their understanding of the language. To begin this liveProject you will need to be familiar with the following:

  • Python “shell” such as Jupyter Notebook
  • Basics of Python variables
  • Creating variables

you will learn

In this liveProject, you’ll master fundamental Python concepts and techniques that will help you grow as a Python programmer.

  • Create Mental Models to help decide how to approach and solve a problem
  • Exploring variables as containers
  • Exploring variables as labels
  • Using the id() function


You choose the schedule and decide how much time to invest as you build your project.
Project roadmap
Each project is divided into several achievable steps.
Get Help
While within the liveProject platform, get help from other participants and our expert mentors.
Compare with others
For each step, compare your deliverable to the solutions by the author and other participants.
book resources
Get full access to select books for 90 days. Permanent access to excerpts from Manning products are also included, as well as references to other resources.
includes 5 liveProjects
liveProject $41.99 $69.99 self-paced learning