Using context managers (with statement) python In Hindi
पाइथन प्रोग्राम में कॉन्टेक्स्ट मैनेजर्स फीचर्स को स्पेशली रूप से पाइथन फाइल क्लोज with स्टेटमेंट के साथ, पाइथन फाइल हैंडलिंग ऑपरेशन में ओपन और क्लोज फ़ाइलों के साथ काम करने का सुगम माध्यम प्रदान करता है। फाइल हैंडलिंग ऑपरेशन के समय with स्टेटमेंट यह सुनिश्चित करता है कि मौजूदा फाइल ऑपरेशन रीड और राइट फ़ाइल ऑपरेशन में फाइल ठीक से ओपन और क्लोज हो, भले ही फाइल हैंडलिंग ऑपरेशन के दौरान कोई एरर डिस्प्ले हो।
So let’s see how to use context managers features with with statement in Python file handling.
Reading from file in file handling.
कॉन्टेक्स्ट मैनेजर को यूज़ कर sample.txt फाइल को रीड करे।
file_location = ‘sample.txt’
# here with statement open and close you file automatically
with open(file_location, ‘r’) as file: # open file with statement for read operation
for line in file:
print(line.strip()) # this function process on file text lines
In the above program example.
open(file_location, ‘r’) sample.txt फाइल को रीड ओनली मोड (‘r’) में ओपन करता है।
with open(…) as file – यहाँ with स्टेटमेंट में ओपन होने वाली फ़ाइल ऑब्जेक्ट को मैन्युअल असाइन किया जाता है, और यहाँ with स्टेटमेंट ओपन फाइल को यह कन्फर्म करता है कि कोड के इंडेंट किए गए ब्लॉक (with ब्लॉक) के प्रॉपर एक्सेक्यूशन के बाद ओपन फाइल ऑटोमेटिकली क्लोज हो जाएंगी।
Writing to a Python file.
ऊपर की तरह फाइल हैंडलिंग कॉन्टेक्स्ट मैनेजर फीचर्स को आप यूज़ कर के किसी फाइल में इनफार्मेशन को राइट कर सकते है.
file_location = ‘sample.txt’
# here with statement use to automatically close the open file after file operation done
with open(file_location, ‘w’) as file:
file.write(“let explore python with statement \n”)
file.write(“with statement automatically close open file when task done”)
ऊपर दिए गए प्रोग्राम में.
open(file_location, ‘w’) sample.txt फाइल को राइट मोड (‘w’) में ओपन करता है. जो यदि ओपन फ़ाइल पहले से मौजूद होने पर स्माल कर देगा, यदि फाइल पहले से मौजूद नहीं है तो यह राइट मोड में एक नई फ़ाइल क्रिएट कर देगा।
हमें पहले से ही पता है की पाइथन फाइल हैंडलिंग में write() फाइल मेथड का उपयोग नई फ़ाइल में डाटा और इनफार्मेशन को राइट करने में होता है।
Appending text/info to a Python file.
मौजूदा पाइथन फाइल प्रोग्राम में कॉन्टेक्स्ट मैनेजर का उपयोग करके फ़ाइल में टेक्स्ट और इनफार्मेशन को ऐड करना।
file_location = ‘sample.txt’
# with statement use top oepn and close file
with open(file_location, ‘a’) as file: # here sample.txt file open for appending operation
file.write(“let add some text in exisitng sample.txt file \n”)
ऊपर दिए गए फाइल अपेण्ड ऑपरेशन में.
open(file_location, ‘a’) sample.txt फाइल में एपेंड मोड (‘a’) फाइल को टेक्स्ट और इनफार्मेशन को अपेण्ड मोड में ओपन करता है. याद रखे अपेण्ड मोड आपके द्वारा पूर्व में बनाई गई फाइल के अंत में अपेण्ड टेक्स्ट और इनफार्मेशन को ऐड कर देगा। जबकि पूर्व में बना फाइल टेक्स्ट और इनफार्मेशन यथावत रहेगा।
Advantage of context manager in Python program.
पाइथन फाइल हैंडलिंग प्रोग्राम ऑपरेशन में with स्टेटमंट के कई एडवांटेज है.
File automatic resource management – पाइथन प्रोग्राम में यह सुनिश्चित करता है कि फ़ाइल ऑपरेशन के दौरान ऑपरेटेड फाइल ठीक से ओपन और क्लोज की गई है, भले ही आपके फाइल प्रोग्राम कोड ब्लॉक सफलतापूर्वक एक्सेक्यूट हो या प्रोग्राम एरर/एक्सेप्शन उत्पन्न हो।
File cleaner code – फाइल हैंडलिंग में फ़ाइलों को स्पष्ट रूप से खोलने और बंद करने के लिए कई पाइथन प्रोग्राम में बॉयलरप्लेट कोड लिखने के प्रोसेस को कम करता है, और मौजूदा फाइल हैंडलिंग प्रोग्राम रीडेबिलिटी और मेंटेनेंस को इम्प्रूव करता है।
File exception handling – यह मौजूदा फाइल हैंडलिंग प्रोग्राम में एक्सेप्शन ब्लॉक के अंदर होने पर भी फ़ाइल को क्लोज करने और फाइल की क्लीनिंग को ऑटोमेटिकली रूप से मैनेज कर एरर हैंडलिंग को इजी करता है।
Error Management with Context Manager in Python.
आप पाइथन फ़ाइल हैंडलिंग ऑपरेशन के दरम्यान उत्पन्न होने वाले स्पेसिफिक एक्सेप्शन को मैनेज करने के लिए try-except एक्सेप्शन ब्लॉक का उपयोग करके with स्टेटमेंट में एरर मैनेजमेंट को ऐड कर सकते हैं।
Error Management with Context Manager in Python Programs.
file_location = ‘sample.txt’
try:
with open(file_location, ‘r’) as file:
for line in file:
print(line.strip()) # stip function used to process each line in file
except FileNotFoundError:
print(f”Error – display the file not found error ‘{file_location}’ file not available.”)
except PermissionError:
print(f”Error – file permission restricted ‘{file_location}’.”)
except IOError as e:
print(f”Error – file disk open error {e}”)
ऊपर दिया गया पाइथन फाइल हैंडलिंग ऑपरेशन में आप कॉन्टेक्स्ट मैनेजर का उपयोग करते हुए मल्टीप्ल फाइल हैंडलिंग प्रोग्राम एक्सेप्शन एरर को मैनेज कर सकते है. जहा विथ स्टेटमेंट और ट्राय ब्लॉक स्टेटमेंट को यूज़ कर मल्टीप्ल फाइल एक्सेप्शन को मैनेज कर सकते है.