Python Programming
The module COMP517 Programming Fundamentals will cover the following concepts in programming using the programming language Python as an illustration:
- Core imperative programming ideas: sequence, assignment and variables
- Selection, functions and parameters
- Data types and operators
- Iteration
- Strings and arrays
- Multi-dimensional arrays, lists, sets and dictionaries
- Object-oriented programming: encapsulation, inheritance, polymorphism
- Input/Output and exception handling
- Functions, recursion and functional programming
- Dynamic data structures: linked lists, queues and stacks
The following material may help you to prepare for this module:
- For videos covering data types, variables, selection, iteration, strings, arrays, functions and recursion see
Centre for Education in Mathematics and Computing: Python from Scratch.
https://open.cs.uwaterloo.ca/python-from-scratch/ Links to an external site. - For texts and exercises covering data types, variables, selection, iteration, strings, arrays, functions and recursion see
Centre for Education in Mathematics and Computing: Computer Science Circles (Python). University of Waterloo, 2023. https://cscircles.cemc.uwaterloo.ca Links to an external site. [accessed 2023-06-19].
- A more extensive introduction to Python is provided by
Learn Python: Learn the basics. learnpython.org, 2023.
https://www.learnpython.org Links to an external site. [accessed 2023-06-19] - For texts and exercises covering all the language constructs listed in the COMP517 syllabus see
W3 Schools: Python Tutorial. Refsnes Data, 2023.
https://www.w3schools.com/python/default.asp Links to an external site. [accessed 2023-06-19].