The first 5 weeks of this class are devoted to understanding the language of Python. I assume that students are comfortable with the material of 10A. This means that I can cover a lot quite quickly emphasizing the differences with C++. This part of the class is more abstract, but learning this material thoroughly is often the difference between being an average coder and an excellent coder.
- control flow
- function scope
- default values
- standard data structures
The last 5 weeks of the class focus on some of Python's most useful libraries.
Libraries and topics:
- NumPy and Matplotlib for image processing
- NumPy and Scikit-learn for machine learning
- PyQt for GUIs (Graphical User Interfaces)
- Threading mainly for use in your future coding life
- Pandas for databases
The homework assignments in this class are some of the most interesting from the classes that I teach.
As an example, here is a quick summary of the assignment that I set on image processing.