ایک context manager ایک ایسی چیز ہے جو setup اور teardown logic کو متعین کرتی ہے، with statement کے ساتھ استعمال ہوتی ہے۔ یہ یقینی بناتی ہے کہ cleanup (فائلوں کو بند کرنا، locks کو release کرنا، transactions کو واپس لینا) خودکار طور پر ہو — یہاں تک کہ اگر کوئی خرابی ہو۔
یہ مسئلہ جو حل کرتا ہے
f = ()
data = f.read()
process(data)
f.close()
() f:
data = f.read()
process(data)
