Kontekstinhallintaohjelma on objekti, joka määrittää alustus- ja puhdistuslogiikan, joita käytetään with-lauseen kanssa. Se takaa, että puhdistus (tiedostojen sulkeminen, lukkojen vapauttaminen, transaktioiden palautus) tapahtuu automaattisesti — jopa virheenä.
Ongelma, jonka se ratkaisee
f = ()
data = f.read()
process(data)
f.close()
() f:
data = f.read()
process(data)
