CS50's Introduction to Programming with Python

  • Free
  • Certificate included
  • Course certificate
  • Beginner
  • 10 weeks
Provider
Harvard
Cost
Free
Certificate
Included, free and verifiable
Level
Beginner
Duration
10 weeks
Effort
3–9 hrs/week
Format
Self-paced
Language
English
Subjects
Python, Programming
Source
Harvard Online
Last verified
14 Sep 2026

CS50P teaches programming through Python alone, for people with or without prior experience. It starts with functions, arguments and return values, variables and types, conditionals and Boolean expressions, and loops, then moves on to handling exceptions, finding and fixing bugs, writing unit tests, using third-party libraries, validating data with regular expressions, modelling real-world entities with classes and objects, and reading and writing files. The material is organised as ten weeks; for each you watch the lecture and the recommended shorts, then submit a problem set inspired by real-world programming problems, and the course finishes with a final project. No software is needed beyond a web browser, though you can also write code on your own PC or Mac.

The course is free through Harvard's OpenCourseWare, and a free edX account is needed to submit work for feedback. Scoring at least 70% on every problem and the final project earns a free CS50 Certificate, and a verified certificate is offered through edX for a fee. Harvard's listing rates the course introductory and gives a time commitment of 3 to 9 hours per week. It can be taken before, during or after CS50x.

Advertisement

What you’ll learn

  • Write Python programs with functions, variables, conditionals and loops
  • Handle exceptions and find and fix bugs in your own code
  • Write unit tests and use third-party libraries
  • Validate and extract data with regular expressions
  • Model real-world entities with classes, objects, methods and properties
  • Read from and write to files

Who it’s for

People who want to learn Python specifically, with or without programming experience; if you want computer science fundamentals rather than one language, Harvard points you to CS50x instead.

Source: Harvard Online (opens in a new tab) · Verified · Report a change

Advertisement
FreeOpens cs50.harvard.edu Go to course (opens in a new tab)