Harvard CS50’s Introduction to Programming with Python – Full University Course


Learn Python programming from Harvard University. It dives more deeply into the design and implementation of web apps with Python, JavaScript, and SQL using frameworks like Django, React, and Bootstrap. Topics include database design, scalability, security, and user experience. You will learn how to write and use APIs, create interactive UIs, and leverage cloud services like GitHub and Heroku.

This course will teach you how to read and write code as well as how to test and “debug” it. It is designed for students with or without prior programming experience who’d like to learn Python specifically. Learn about functions, arguments, and return values (oh my!); variables and types; conditionals and Boolean expressions; and loops. Learn how to handle exceptions, find and fix bugs, and write unit tests; use third-party libraries; validate and extract data with regular expressions; model real-world entities with classes, objects, methods, and properties; and read and write files. Hands-on opportunities for lots of practice. Exercises inspired by real-world programming problems. No software required except for a web browser, or you can write code on your own PC or Mac.

Whereas CS50x (the original CS50 course) itself focuses on computer science more generally as well as programming with C, Python, SQL, and JavaScript, this course, aka CS50P, is entirely focused on programming with Python. You can take CS50P before CS50x, during CS50x, or after CS50x. But for an introduction to computer science itself, you should still take CS50x!

💻 Slides, source code, and more at https://cs50.harvard.edu/python

✏️ Dr. David J. Malan teaches this course.

🖥 Watch the original CS50x course: https://youtu.be/8mAITcNt710

⭐️ Course Contents ⭐️
(00:00:00) Introduction
(00:04:48) Lecture 0 – Functions, Variables
(01:50:24) Lecture 1 – Conditionals
(02:46:23) Lecture 2 – Loops
(04:07:10) Lecture 3 – Exceptions
(04:51:45) Lecture 4 – Libraries
(06:09:15) Lecture 5 – Unit Tests
(07:00:22) Lecture 6 – File I/O
(08:32:32) Lecture 7 – Regular Expressions
(10:37:35) Lecture 8 – Object-Oriented Programming
(13:28:47) Lecture 9 – Et Cetera


Discord: https://discord.gg/cs50
Ed: https://cs50.harvard.edu/x/ed
Facebook Group: https://www.facebook.com/groups/cs50/
Faceboook Page: https://www.facebook.com/cs50/
GitHub: https://github.com/cs50
Gitter: https://gitter.im/cs50/x
Instagram: https://instagram.com/cs50
LinkedIn Group: https://www.linkedin.com/groups/7437240/
LinkedIn Page: https://www.linkedin.com/school/cs50/
Medium: https://cs50.medium.com/
Quora: https://www.quora.com/topic/CS50
Reddit: https://www.reddit.com/r/cs50/
Slack: https://cs50.edx.org/slack
Snapchat: https://www.snapchat.com/add/cs50
SoundCloud: https://soundcloud.com/cs50
Stack Exchange: https://cs50.stackexchange.com/
TikTok: https://www.tiktok.com/@cs50
Twitter: https://twitter.com/cs50
YouTube: https://www.youtube.com/cs50


Facebook: https://www.facebook.com/dmalan
GitHub: https://github.com/dmalan
Instagram: https://www.instagram.com/davidjmalan/
LinkedIn: https://www.linkedin.com/in/malan/
TikTok: https://www.tiktok.com/@davidjmalan
Twitter: https://twitter.com/davidjmalan


Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International Public License