Learn to program in Python, a powerful language used by sites like YouTube and Dropbox.


enrolled students

13 Hours

estimated course time


required technical level

Python Syntax

Python Syntax

This lesson will introduce you to Python, a general-purpose, object-oriented interpreted language you can use for countless standalone projects or scripting applications.

Tip Calculator

Now that you've completed the lesson on Python syntax, let's see if you can put your newfound skills to use. In this lesson, you'll create a simple calculator that determines the price of a meal after tax and tip.

Strings and Console Output

Strings & Console Output

This lesson will introduce you to strings and console output in Python, including creating string literals, calling a variety of string methods, and using the "print" keyword.

Date and Time

This lesson is a follow up to Unit 2: Strings and Console input and will give you practice with the concepts introduced in that lesson.

Conditionals and Control Flow

Conditionals & Control Flow

In this lesson, we'll learn how to create programs that generate different outcomes based on user input!


In this lesson we'll put together all of the Python skills we've learned so far including string manipulation and branching. We'll be building a Pyg Latin translator. (That's Pig Latin for Python Programmers!)



A function is a reusable section of code written to perform a specific task in a program. We gave you a taste of functions in Unit 3; here, you'll learn how to create your own.

Taking a Vacation

Hard day at work? Rough day at school? Take a load off with a programming vacation!

Lists & Dictionaries

Python Lists and Dictionaries

Lists and dictionaries are powerful tools you can use to store, organize, and manipulate all kinds of information.

A Day at the Supermarket

Let's manage our own supermarket and buy some goods along the way!

Student Becomes the Teacher

Student Becomes the Teacher

Use what you've learned so far to manage your own class.

Lists and Functions

Lists and Functions

Now that you've learned about lists, let's turbo-charge them with functions.


In this lesson, we will make a simplified version of the classic board game Battleship! We'll use functions, lists, and conditionals to make our game.



Loops allow you to quickly iterate over information in Python. In this lesson, we'll cover two types of loop: 'while' and 'for'.

Practice Makes Perfect

You know a lot of Python now. Let's do some practice problems!

Exam Statistics

Exam Statistics

Your students just took their first test. It's time to see how everyone did. Let's write a program to compute the mean, variance, and standard deviation of the test scores.

Advanced Topics in Python

Advanced Topics in Python

In this lesson, we'll cover some of the more complex aspects of Python, including iterating over data structures, list comprehensions, list slicing, and lambda expressions.

Introduction to Bitwise Operators

Bitwise operations directly manipulate bits—patterns of 0s and 1s. Though they can be tricky to learn at first, their speed makes them a useful addition to any programmer's toolbox.

Introduction to Classes

Introduction to Classes

Classes are a crucial part of object-oriented programming (OOP). In this lesson, we'll explain what classes are, why they're important, and how to use them effectively.


Make your own Car and learn how to driveCar()!

File Input and Output

File Input/Output

Now that you understand Python syntax and have been introduced to some Python best practices, let's apply what you've learned to a real-world application: writing data to a file.

Made in NYC © 2018 Codecademy