Programme Overview
The Advanced Python 3 training course aims to take attendees beyond basic Python.
The course will enable attendees to enable to produce more efficient, safer and maintainable code using standard Python idioms. The course assumes you are happy with core Python concepts and syntax.
Pre-requisites
Delegates should have taken an Introduction to Python 3 course or have six months of Python programming experience
Course Content
OO Programming in Python
- Classes/objects
- Constructors/destructors
- Methods instance/class
- Inheritance/polymorphism
- Abstract classes
- Privacy/data hiding
- Data attribute control
Meta Programming
- Monkey patching
- Meta classes
Functional Programming in Python
- Map/filter/reduce
- Decorators
- Closures
- Lambdas
- Comprehensions
- Generators
- Use of yield
- The itertools module
Collections
- The collections module (defaultdict/Counter …)
- The array module
Data Transfer (Parsing/Generation)
Concurrency
- Threads
- Processes
- Coroutines
Testing with pytest
Debugging with pdb
Potential Extra Topics
- Socket programming
- Integrating with C
RESTful services.