CMSC 141: Introduction to Python

Summer 2026 • Monday / Tuesday / Thursday • 6:00–8:00pm

Course Description

This course introduces Python programming from the ground up. No prior programming experience is assumed. We cover the core mechanisms of the language, including variables, control flow, functions, data structures, and object-oriented design, and use them to build programs that solve real problems. By the end of the course, you will be able to read, write, debug, and reason about Python programs at a level that prepares you for more advanced study in computer science.

Course Objectives

Upon completion of the course, students should be able to:

  1. Use Python's basic mechanisms (variables, conditionals, iteration, and functions) to solve problems.
  2. Use Python's built-in data structures (lists, strings, tuples, and dictionaries) to represent and work with data.
  3. Design and use programming abstractions (functions and classes) to reduce complexity and make code easier to read and reuse.
  4. Design and write recursive functions.
  5. Read and write files, handle exceptions, and write programs that interact with their environment.

Course Platforms

We use two platforms alongside this site. Bookmark both.

Grading and office hours are still being finalized. See the Course Policies page for details as they are posted.