Context manager არის ობიექტი, რომელიც განსაზღვრავს setup და teardown ლოგიკას და გამოიყენება with statement-ის ერთად. ის გარანტიას იძლევა რომ cleanup (ფাილების დახურვა, locks-ის გათავისუფლება, transactions-ის rollback) ხდება ავტომატურად — თუნდაც ხარვეზი მოხდეს.
პრობლემა, რომელსაც ის წყვეტს
f = ()
data = f.read()
process(data)
f.close()
() f:
data = f.read()
process(data)
