Context Management
Learn about context managers that simplify resource management and ensure proper cleanup even with exceptions.
We'll cover the following
What are context managers?
The need to close files when we are finished with them can make our code quite ugly. Because an exception may occur at any time during file I/O, we ought
to wrap all calls to a file in a try...finally
clause. The file should be closed in the finally
clause, regardless of whether I/O was successful. This isn’t very Pythonic. Of course, there is a more elegant way to do it.
Python’s file objects are also context managers. By using the with
statement, the context management methods ensure that the file is closed, even if an exception is raised. By using the with
statement, we no longer have to explicitly manage the closing of the file.
Get hands-on with 1400+ tech skills courses.