Python Foundations (OpenClass)

Offered by OpenClass,
Python Foundations (OpenClass)

This course aims to introduce beginners to programming in Python, starting at square zero. By the end of this course, learners should not expect to be programming wizards; rather, they should expect to have a solid foundational understanding of how Python works to pursue further knowledge in more specific areas of programming, such as natural language processing, web development, or general programming.

Welcome to Python Foundations!

And if this is your first class on OpenClass, welcome to OpenClass!

This class aims to introduce learners with zero programming experience to the Python programming language.
To temper your expectations, you should not expect to be a programming wiz by the end of this class. That can take years of practice.
But, by the end of this class, you should expect to have a solid foundation of how Python works. With this knowledge, you should be well-prepared to pursue more specific areas of programming that are of interest to you, such as Natural Language Processing, data science, web development, or general programming.
Here's how the class will work
This class is comprised of six units:

  • Python Basics
  • Control Flow
  • Types
  • Iteration
  • Object-Oriented Programming
  • Modules

Each unit is comprised of lessons, quizzes, review assignments, and projects:

  • Lessons are intended to be short and focused. This is where we will teach about a topic.
  • Most lessons will be associated with a short, 3-question mastery quiz, that will unlock immediately upon going through the lesson. The purpose of these mastery quizzes is to make the lessons more engaging and allow you to assess your current understanding of the material. The difference between a mastery quiz and a normal quiz is that if you fall short of a certain mastery threshold, you will be given an opportunity to review feedback and change any of your answers for half points back.
  • Each unit includes a cumulative review assignment to reinforce all of the concepts taught in the unit's lessons. These review assignments include both coding questions and free response questions, and aim to provide you with a low-stakes environment to master fundamental concepts.
  • Most units conclude with a project to practice the concepts taught in the unit's lessons. These projects are optional and ungraded, but we highly recommend that you give them a try. After all, practice makes perfect!

While each later unit builds upon knowledge presented in earlier units, the first lesson of each unit is unlocked to start. While we recommend completing them in the order that we teach them, we also want this class to serve as a resource for learners with some experience in Python to expand their knowledge in any area of their choosing.

Go to Class
MOOC List is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Related Courses

Practical Python for AI Coding 2 (Coursera) Coursera
Korea Advanced Institute of Science and Technology - KAIST

Practical Python for AI Coding 2 (Coursera)

This course is for a complete novice of Python coding, so no prior knowledge or experience in software coding is required. This course selects, introduces and explains Python syntaxes, functions and libraries that were frequently used in AI coding. In addition, this course introduces vital syntaxes, and functions often used in AI coding and explains the complementary relationship among NumPy, Pandas and TensorFlow, so this course is helpful for even seasoned python users.

Oct 26th 2026
5-12 Weeks
Learn to teach with automatic assessments (JuezLTI) Other Providers
C.I.F.P. Carlos III,Karlstad University,Bursa Il Milli Egitim Mudurlugu,INESTEC,Entornos de Formación - EDF

Learn to teach with automatic assessments (JuezLTI)

Come and join teachers around the world and learn how to teach with automatic programming assessments using JuezLTI. JuezLTI is a tool to support computer science teaching, and allows the automatic assessment of programming exercises, databases and markup languages. In this course you will learn how to setup the LTI tool in your LMS, how to create exercises or import them from Authorkit and discuss with other teachers around the world how to integrate it in your teaching. The course is aimed at teachers programming teachers in vocational schools or higher education institutions.

Nov 14th 2022
4 Weeks
Practical Python for AI Coding 1 (Coursera) Coursera
Korea Advanced Institute of Science and Technology - KAIST

Practical Python for AI Coding 1 (Coursera)

This course is for a complete novice of Python coding, so no prior knowledge or experience in software coding is required. This course selects, introduces and explains Python syntaxes, functions and libraries that were frequently used in AI coding. In addition, this course introduces vital syntaxes, and functions often used in AI coding and explains the complementary relationship among NumPy, Pandas and TensorFlow, so this course is helpful for even seasoned python users.

Oct 26th 2026
5-12 Weeks
Learn CSS Flexbox (Coursera) Coursera
Scrimba

Learn CSS Flexbox (Coursera)

Mastering CSS Flexbox: Unlock the Power of Flexible Web Layouts. Discover the indispensable art of CSS Flexbox and elevate your web development prowess to new heights. In this comprehensive course, you'll gain proficiency in harnessing the unparalleled capabilities of Flexbox, revolutionizing the way you construct websites.

Oct 26th 2026
1 Week
Programming with Scratch (Coursera) Coursera
The Hong Kong University of Science and Technology - HKUST

Programming with Scratch (Coursera)

Learning coding is not only about understanding the programming language being used, but also developing important computational thinking skills, which are useful for problem solving across many disciplinary areas. In this course, students will learn basic programming skills by creating interactive storybooks, animations, and games with Scratch, which is a block-based visual programming language for anyone new to coding.

Oct 26th 2026
5-12 Weeks
Learn TypeScript (Coursera) Coursera
Scrimba

Learn TypeScript (Coursera)

Are you a proficient developer in HTML, CSS, and JavaScript, looking to elevate your technical skillset? Have you observed an increasing demand for TypeScript in the professional job market and are keen to explore its significance? Are you in search of a programming language that offers ease in readability and debugging? If the answer to any of these questions is affirmative, then you have arrived at the optimal course to advance your career.

Oct 26th 2026
4 Weeks
Big Data Analysis Deep Dive (Coursera) Coursera
Alibaba Cloud Academy

Big Data Analysis Deep Dive (Coursera)

The job market for architects, engineers, and analytics professionals with Big Data expertise continues to increase. The Academy’s Big Data Career path focuses on the fundamental tools and techniques needed to pursue a career in Big Data. This course includes: data processing with python, writing and reading SQL queries, transmitting data with MaxCompute, analyzing data with Quick BI, using Hive, Hadoop, and spark on E-MapReduce, and how to visualize data with data dashboards. Work through our course material, learn different aspects of the Big Data field, and get certified as a Big Data Professional!

Oct 26th 2026
5-12 Weeks
Programming Mobile Applications for Android Handheld Systems: Part 2 (Coursera) Coursera
University of Maryland, College Park

Programming Mobile Applications for Android Handheld Systems: Part 2 (Coursera)

This course introduces you to the design and implementation of Android applications for mobile devices. You will build upon concepts from the prior course, including handling notifications, using multimedia and graphics and incorporating touch and gestures into your apps.

Oct 26th 2026
5-12 Weeks
Programación en Python (Coursera) Coursera
Universidad de los Andes

Programación en Python (Coursera)

¡Te damos la bienvenida al curso de Programación en Python de la Universidad de los Andes! El propósito de este curso es ofrecerte un ambiente interactivo para que desarrolles tus habilidades de pensamiento computacional, aprendas a programar en el lenguaje Python y te entrenes en la resolución de problemas utilizando un computador. La estrategia pedagógica empleada es el aprendizaje activo basado en casos.

Oct 26th 2026
4 Weeks
Applied Social Network Analysis in Python (Coursera) Coursera
University of Michigan

Applied Social Network Analysis in Python (Coursera)

This course will introduce the learner to network analysis through the NetworkX library. The course begins with an understanding of what network analysis is and motivations for why we might model phenomena as networks. The second week introduces the concept of connectivity and network robustness.. The third week will explore ways of measuring the importance or centrality of a node in a network. The final week will explore the evolution of networks over time and cover models of network generation and the link prediction problem.

Oct 26th 2026
4 Weeks