Learn how to use the object-oriented features of Python, including magic methods and data classes, to write more efficient and effective code.
Overview
Syllabus
Introduction
- Python object-oriented programming
- What you should know
- Setting up the development environment
- Object-oriented programming refresher
- Basic class definition
- Instance methods and attributes
- Checking instance types
- Class methods and members
- Challenge: Stocks
- Solution: Stocks
- Understanding inheritance
- Abstract base classes
- Using multiple inheritance
- Interfaces
- Understanding composition
- Challenge: Stocks and bonds
- Solution: Stocks and bonds
- What are magic methods?
- String representation
- Equality and comparison
- Attribute access
- Callable objects
- Challenge: Sorting stocks
- Solution: Sorting stocks
- Defining a data class
- Using post initialization
- Using default values
- Immutable data classes
- Challenge: Data classes
- Solution: Data classes
- Next steps
Taught by
Joe Marini