
This course includes our updated coding exercises so you can practice your skills as you learn.
See a demo
Explore how coding analyzes and visualizes data through a class of examples, showcased in this course trailer.
Learn Python from basics to advanced topics, covering variables, functions, if statements, loops, and data structures such as lists, dictionaries, and sets, with input/output and hands-on projects like blackjack.
Learn how variables store and update integers, decimals, and strings, print them, and understand local versus global scope, assignment, overwriting, and shorthand operations.
Explore how to define and use functions in Python, including def, function names, inputs, indentation, and return values, and learn to call functions for reusable, scalable code.
Explore how if statements control program flow based on conditions, using boolean values, equality and relational checks, indentation, and examples like a like counter, thermostat, and pajama logic.
Learn how to use lists to group data in one variable, access elements by zero-based indices, slice ranges, append items, and mix data types, including nested lists.
Learn the for loop's structure: for, a loop variable, in, an iterable, with indentation. Iterate over strings and lists, use range for sequences, and build lists.
Build understanding of while loops: form, condition, and indented actions; use counters and indices to traverse lists, sum sequences, and simulate height and time during a fall.
Explore breaking and continuing in loops to control program flow, using break to stop a loop and continue to skip to the next iteration, illustrated with a list of participants.
Use for loops and a temporary variable with range to draw a triangle by printing a character multiple times, guided by a length variable.
Use nested loops and control flow to print a tic tac toe grid with three rows and three columns separated by dashed lines, built with two for loops.
Explore how sets remove duplicate elements and remain unordered. Learn how dictionaries map keys to values to count occurrences, contrasting them with lists for data organization.
Learn to manage a store inventory with a dictionary in Python, using shoe sizes as keys and quantities as values. Implement stock checks, purchases, and loop exit on negative input.
Learn to build interactive programs by handling user input and output, converting inputs to integers or floats, formatting prompts, and collecting data in lists.
Capture user input to build a list of five participants, store it with loops, and write the data to an output file; later read and analyze it for simple statistics.
Expand the previous code to compute statistics from participant data stored in a file by using dictionaries to track ages, finding oldest, youngest, and most frequent ages.
Learn to design a class, initialize objects with __init__, and manage attributes and methods. Build team instances with name and origin, modify attributes with methods, and apply default values.
Create a general pet class with name, age, hunger, and playful attributes, plus an initializer, then use getters and setters and plan inheritance for dogs and cats.
Create a dog class that inherits from a pet, use an initializer to set name, age, hunger, playful, breed, and a favorite toy, and implement the wants to play method.
Explore creating a separate human class that stores pet objects in an array, accessing inherited dog and cat properties, and demonstrating class containment and inheritance.
Import external libraries in Python and access their features, as shown with the random library. Generate random integers and floats with seed control and optional aliases to simplify access.
Explore different import methods and use the random library to manipulate lists, including selecting random elements and shuffling. Learn how importing specific functions can save memory and simplify code.
Discover how to use the time library to measure code speed and pause execution. Import time, use time.clock to time blocks, and time.sleep to create delays.
Explore the math library and its functions—square root, exponential, factorial, sine, floor, and ceiling—and learn how to import, use variables, and handle rounding in radians.
Create a user guessing game with the random library that generates an integer from 0 to 100. The program prompts guesses and signals too low or too high until correct.
Have the computer guess a random float between 0 and 1 using a binary search on upper and lower bounds, updating the midpoint until it matches, and measure the time.
Learn to build a blackjack deck with a create deck function, populate values 2–10 and A, J, Q, K, and shuffle the deck with random for a playable game.
Expand the player class to handle taking cards, start a new game, and set up betting, with hit and play methods, score updates, and money management through pay and win.
Expand the player class to include a bet property and a betting method. Implement win logic with 2x payout and blackjack 2.5x payout, and reset the bet.
Develop and finalize a blackjack game by adding has blackjack logic, betting, house drawing, and outcome scoring, including draws and repeated rounds with deck reshuffling.
Anyone - even if you have no programming experience - can learn to code in Python with Mammoth Interactive. Learn to analyze and visualize data with bars, diagrams, and graphs.
This course was funded by a wildly successful Kickstarter
This course is fun, project-filled, and practical.
If you want to do any of the following...
You should take this course!