design patterns in python

2 3 4 5 6