go back  09 - The With Statement and Context Managers




This challenge write-up first appeared on PyBites.

This week, each one of you has a homework assignment ... - Tyler Durden (Fight club)

A new week, time for some coding!

This week we have a free form exercise. After reading Dan's great article on the with statement we thought it would be cool to ask our PyBites community to come up with creative uses of the with statement. This week you get to implement your own Context Manager.

You can either:

  • Define a class implementing the __enter__ and __exit__ methods. Dan shows an Indenter class as example in his article.

  • Use the nice @contextmanager decorator shortcut.

Have fun!

Other resources

To follow along with our challenges

Start coding by forking our challenges repo:

$ git clone https://github.com/pybites/challenges

If you already forked it sync it:

# assuming using ssh key
$ git remote add upstream [email protected]:pybites/challenges.git
$ git fetch upstream
# if not on master:
$ git checkout master
$ git merge upstream/master
$ cd 09
# open withlove.py (just a blank file for this challenge)
# code

Remember: there is no best solution, only learning more/ better Python. We're looking forward reviewing our and your solutions end of this week. Good luck and have fun!


About PyBites Code Challenges

More background in our first challenge article.