Harvard University · on edX

CS50's Introduction to Programming with Python

Beginner 60 hours English University CertificateFREE
SkillsPythonFunctionsLoopsFile handlingRegular expressionsUnit testingObject-oriented programming

Is this course right for you?

Our take
Worth it if you want to learn Python specifically, taught rigorously and free. It is Harvard's Python-only course, gentler than the broader CS50x.

Good for: beginners who want to learn Python specifically, with an optional Harvard certificate.

Skip if: you want a broad computer-science foundation across languages, or you already know Python.

The value is the way it teaches correctness: functions, exceptions, unit testing and object-oriented code, with exercises drawn from real problems rather than toy examples. It assumes nothing and needs only a browser, so it is a genuine first course, but it holds you to a real standard, which is what makes it stick.

It is Python and fundamentals only, so you will not get a broad multi-language CS foundation here (CS50x is the one for that), and it is not project-portfolio heavy like the paid bootcamps. It is free to audit; the HarvardX certificate is an optional paid add-on. The material is current and well maintained (as of 2026).

Comparison · LBS

Compare alternatives for CS50's Introduction to Programming with Python

Same topic, different options. We surface the trade-offs others hide so you can pick the course that actually fits your time, budget, and goals.
edX
CS50's Introduction to Programming with Python
Price
Free
Audit free · HarvardX certificate available (paid)
Duration
60 hrs
Level
Beginner
Certificate
University Certificate
MIT OpenCourseWare4.8(12,000)
Introduction to Computer Science and Programming in Python (6.0001)
Price
Free
Completely free, openly licensed — no certificate
Duration
35 hrs
Level
Beginner
Certificate
LinkedIn Learning4.7(4,000)
Python Essential Training
Price
Paid
LinkedIn Learning subscription
Duration
8 hrs
Level
Beginner
Certificate
Course Certificate
freeCodeCamp4.7(6,200)
Scientific Computing with Python Certification
Price
Free
Completely free, forever
Duration
300 hrs
Level
Intermediate
Certificate
Course Certificate
Prices & availability can change — confirm on the provider's site. We're not affiliated with any single provider.

About this course

CS50's Introduction to Programming with Python (CS50P) is HarvardX's dedicated on-ramp to Python, taught by David Malan of CS50 fame. Across ten self-paced weeks it builds programming from zero: functions, variables and types, conditionals and Boolean logic, loops, exception handling, libraries, unit testing, file I/O, regular expressions and object-oriented programming — reinforced with hands-on exercises drawn from real-world problems.

Instructor

DJ
David J. Malan
edX instructor

Taught by David J. Malan, Gordon McKay Professor of the Practice of Computer Science at Harvard and the long-time instructor behind the globally popular CS50 courses.

Frequently asked questions

No. CS50P stands on its own and is a fine first course if Python is your goal. CS50x is broader — several languages and more computer-science theory — so if you specifically want to learn Python, you can start straight here without the wider course.

Generally, yes. CS50P skips C and the lower-level material, so it's gentler and more focused on one language, though the later problem sets still take real effort. If CS50x's famously tough C weeks are what put you off, CS50P is the friendlier way into programming.

At least 70% on each problem set and on the final project. If you fall short you can keep improving and resubmitting — there's no penalty for multiple attempts, and Harvard issues the free certificate once you clear the bar on everything.
Free
to audit
Enroll now