Trying to understand python with statement and context managers
I am new to this, and am just trying to understand the with statement. I understand that it is supposed to replace the try / except block. Now suppose I do something like this: try: name='rubicon'/2 # to raise an exception except Exception as e: print "no not possible" finally: print "Ok I caught you" How do I replace this with a context manager? with doesn't really replace try / except , but, rather, try / finally . Still, you can make a context manager do something different in exception cases from non-exception ones: class Mgr(object): def __enter__(self): pass def __exit__(self, ext, exv,