# Week 3

This week moves from basic control flow to reusable code, packages, and object-oriented programming.

## Learning Goals

* Define and call functions with clear inputs and outputs.
* Organize code using modules and packages.
* Understand core OOP ideas: classes, inheritance, and polymorphism.
* Handle errors safely with exceptions.

## File Map

* `week3/functions/README.md`
* `week3/functions/function_arguments/README.md`
* `week3/functions/lambda_function/README.md`
* `week3/functions/python_recursion/README.md`
* `week3/modules/README.md`
* `week3/modules/python_built-in_modules/README.md`
* `week3/modules/python_third_party_modules/README.md`
* `week3/modules/python_packages/README.md`
* `week3/python_exceptions/README.md`
* `week3/oop/README.md`
* `week3/oop/classes/README.md`
* `week3/oop/inheritance/README.md`
* `week3/oop/polymorphism/README.md`
* `week3/oop/encapsulation/README.md`
* `week3/oop/abstraction/README.md`

[Next](https://kallyasmedia.gitbook.io/cit-python-cohort-three/week3/modules)
