COMP-4005 Details

COMP 4005 Python Programming I (Foundation Course)

Course Description

This accelerated introductory course covers the basics of Python programming. Students taking this course may have little or no prior programming experience so the course will begin with the absolute basics. By the end of the course students will be able to develop, design and implement Python programs, explain the differences between data types, learn to read from and write to files, understand and use data structures, understand and use recursion, and use Python packages.

Course Learning Objectives

Students that complete this course should have an understanding of computer programming including variables, conditionals, loops, functions and classes. They will be able to do the following:

  1. Create a program and execute it from the command line using Python
  2. Use and understand variables and what they are useful for in programs
  3. Use and understand data types in Python, and when to use them (lists, tuples, hashmaps)
  4. Use if/then/else statements including nesting
  5. Understand boolean operations and composition (e.g., and/or/not)
  6. Implement loops using common Python constructs (for/range loops, while loops, list iteration loops)
  7. Write functions in Python that take arguments and return a value or values
  8. Run and debug (step through) program execution to find errors
  9. Open files, read data from and write data to those files
  10. Use classes as more complex data structures than lists/maps/tuples

Course Outcomes

The high level outcomes from this course are as follows:

  1. Take a problem statement (e.g., given a comma separated value file, read in the data and sort it based on the third column) and break it down into concrete programming steps.
  2. Once programming steps are provided (e.g., create a function that sorts a list of numbers), implement it in code.
  3. Read/interpret what a program is doing based on its source code.

Course Syllabus

Next