Course
It
Features
Courses
How it works
Pricing
Start learning
Start learning
Harvard CS50’s Introduction to Programming with Python – Full University Course · CourseIt
freeCodeCamp.org · 15h 58m · 30 lessons
Harvard CS50’s Introduction to Programming with Python – Full University Course
Already know some of this? A 2-minute test skips the lessons you know.
Take the placement test
The plan
9 days at 90 min a day
Day 1
(today)
Day 2
Day 3
Day 4
Day 5
Day 6
Day 7
Day 8
Day 9
Day 1
11 lessons · 1h 43m
Today
1
Course Introduction and Setup
Overview of the CS50 Python course, its goals, and the topics covered across nine lectures.
5m
Notes and quiz
2
Lecture 0: Functions and Variables - Hello World and Running Code
Write and run a first Python program, understand the interpreter, and learn basic syntax like print and parentheses.
5m
Notes and quiz
3
Lecture 0: Functions and Variables - Input, Variables, and Comments
Use input() to get user data, store it in variables with assignment, and document code with comments and pseudo-code.
11m
Notes and quiz
4
Lecture 0: Functions and Variables - String Methods and Chaining
Clean and format strings using methods like strip, title, capitalize, and chain them for concise, readable code.
9m
Notes and quiz
5
Lecture 0: Functions and Variables - Integers, Floats, and F-strings
Work with int and float types, perform arithmetic, use round and f-string formatting for precision and presentation.
11m
Notes and quiz
6
Lecture 0: Functions and Variables - Defining Custom Functions
Create reusable functions with def, parameters, return values, and default arguments; organize code with a main function.
11m
Notes and quiz
7
Lecture 1: Conditionals - Boolean Expressions and If/Elif/Else
Control program flow using if, elif, else, comparison operators, and Boolean logic to make decisions.
10m
Notes and quiz
8
Lecture 1: Conditionals - Match Statements and Pattern Matching
Simplify multi-branch conditionals using match/case statements for structural pattern matching on values.
8m
Notes and quiz
9
Lecture 2: Loops - While Loops and Infinite Loops with Break
Repeat actions with while loops, manage loop state with variables, and exit infinite loops using break.
11m
Notes and quiz
10
Lecture 2: Loops - For Loops, Range, and Iterating Over Lists
Iterate over sequences using for loops, range, and lists; use enumerate for indexed iteration.
11m
Notes and quiz
11
Lecture 2: Loops - List Operations, Split, and Nested Loops
Manipulate lists with append, split strings into lists, and nest loops for 2D output like grids.
11m
Notes and quiz