Programming in Python
This course offers a comprehensive introduction to computer science and programming through the Python language, emphasizing algorithmic problem solving and modern programming practices. Students begin with Python's history, philosophy, and basic constructs such as variables, primitive types, and simple input/output, then progress to complex data structures, control flow, functions, recursion, and string processing. The course develops object-oriented programming skills including classes, inheritance, and polymorphism, while also covering Python's memory model, exception handling, modular application design, and file I/O. Students gain experience with numerical computing using NumPy, program correctness through testing, debugging, and profiling, and data analysis with Pandas and visualization libraries such as Matplotlib and Seaborn. Advanced topics include anonymous functions, reflection, concurrency, and professional responsibilities in software development, preparing students for further study and practical application of Python in diverse domains. Note: Credit given for only one (1) of CSDS 132 or CSDS 134 . Counts as a Quantitative Reasoning course.
Topics
- anonymous functions
- reflection
- concurrency
- and professional responsibilities in software development
- preparing students for further study and practical application of Python in diverse domains
Topics explicitly listed in official catalogue description
Sources
- Course catalogue ↗2026-2027