Ένας context manager είναι ένα αντικείμενο που ορίζει τη λογική ρύθμισης και καθαρισμού, που χρησιμοποιείται με τη δήλωση with. Εγγυάται ότι ο καθαρισμός (κλείσιμο αρχείων, απελευθέρωση κλειδαριών, ακύρωση συναλλαγών) γίνεται αυτόματα — ακόμη και αν συμβεί σφάλμα.
Το πρόβλημα που λύνει
f = ()
data = f.read()
process(data)
f.close()
() f:
data = f.read()
process(data)
