Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> Python

पायथन में फाइलें खोलना और बंद करना

अब तक, आप मानक इनपुट और आउटपुट को पढ़ और लिख रहे हैं। अब, हम देखेंगे कि वास्तविक डेटा फ़ाइलों का उपयोग कैसे किया जाता है।

पायथन डिफ़ॉल्ट रूप से फाइलों में हेरफेर करने के लिए आवश्यक बुनियादी कार्य और तरीके प्रदान करता है। आप अधिकांश फ़ाइल . कर सकते हैं फ़ाइल ऑब्जेक्ट का उपयोग करके हेरफेर।

खुला फ़ंक्शन

इससे पहले कि आप किसी फ़ाइल को पढ़ या लिख ​​सकें, आपको इसे पायथन के बिल्ट-इन ओपन () फ़ंक्शन का उपयोग करके खोलना होगा। यह फ़ंक्शन एक फ़ाइल . बनाता है ऑब्जेक्ट, जिसका उपयोग इससे जुड़ी अन्य सहायता विधियों को कॉल करने के लिए किया जाएगा।

सिंटैक्स

फ़ाइल वस्तु =खुला(file_name [, access_mode][, बफ़रिंग])

यहाँ पैरामीटर विवरण हैं -

  • file_name - file_name तर्क एक स्ट्रिंग मान है जिसमें उस फ़ाइल का नाम होता है जिसे आप एक्सेस करना चाहते हैं।
  • access_mode - एक्सेस_मोड उस मोड को निर्धारित करता है जिसमें फ़ाइल को खोला जाना है, अर्थात, पढ़ना, लिखना, संलग्न करना, आदि। संभावित मानों की एक पूरी सूची नीचे तालिका में दी गई है। यह वैकल्पिक पैरामीटर है और डिफ़ॉल्ट फ़ाइल एक्सेस मोड पढ़ा जाता है (r)।
  • बफ़रिंग -यदि बफ़रिंग मान 0 पर सेट है, तो कोई बफ़रिंग नहीं होती है। यदि बफ़रिंग मान 1 है, तो फ़ाइल तक पहुँचने के दौरान लाइन बफ़रिंग की जाती है। यदि आप बफ़रिंग मान को 1 से अधिक पूर्णांक के रूप में निर्दिष्ट करते हैं, तो बफ़रिंग क्रिया संकेतित बफ़र आकार के साथ की जाती है। यदि ऋणात्मक है, तो बफ़र आकार सिस्टम डिफ़ॉल्ट (डिफ़ॉल्ट व्यवहार) है।

फ़ाइल खोलने के विभिन्न तरीकों की सूची यहां दी गई है -

<टेबल> <थेड> क्रमांक <थ> मोड और विवरण 1 r
केवल पढ़ने के लिए एक फ़ाइल खोलता है। फ़ाइल पॉइंटर फ़ाइल की शुरुआत में रखा गया है। यह डिफ़ॉल्ट मोड है।
2 आरबी
केवल बाइनरी प्रारूप में पढ़ने के लिए एक फ़ाइल खोलता है। फ़ाइल पॉइंटर फ़ाइल की शुरुआत में रखा गया है। यह डिफ़ॉल्ट मोड है।
3 r+
पढ़ने और लिखने दोनों के लिए एक फाइल खोलता है। फ़ाइल पॉइंटर फ़ाइल की शुरुआत में रखा गया है।
4 आरबी+
बाइनरी प्रारूप में पढ़ने और लिखने दोनों के लिए एक फ़ाइल खोलता है। फ़ाइल पॉइंटर फ़ाइल की शुरुआत में रखा गया है।
5 w
केवल लिखने के लिए एक फाइल खोलता है। फ़ाइल मौजूद होने पर फ़ाइल को अधिलेखित कर देता है। यदि फ़ाइल मौजूद नहीं है, तो लिखने के लिए एक नई फ़ाइल बनाता है।
6 wb
केवल बाइनरी प्रारूप में लिखने के लिए एक फ़ाइल खोलता है। फ़ाइल मौजूद होने पर फ़ाइल को अधिलेखित कर देता है। यदि फ़ाइल मौजूद नहीं है, तो लिखने के लिए एक नई फ़ाइल बनाता है।
7 w+
लिखने और पढ़ने दोनों के लिए एक फाइल खोलता है। फ़ाइल मौजूद होने पर मौजूदा फ़ाइल को अधिलेखित कर देता है। यदि फ़ाइल मौजूद नहीं है, तो पढ़ने और लिखने के लिए एक नई फ़ाइल बनाता है।
8 wb+
बाइनरी प्रारूप में लिखने और पढ़ने दोनों के लिए एक फ़ाइल खोलता है। फ़ाइल मौजूद होने पर मौजूदा फ़ाइल को अधिलेखित कर देता है। यदि फ़ाइल मौजूद नहीं है, तो पढ़ने और लिखने के लिए एक नई फ़ाइल बनाता है।
9 a
संलग्न करने के लिए एक फ़ाइल खोलता है। फ़ाइल पॉइंटर फ़ाइल के अंत में है यदि फ़ाइल मौजूद है। यानी फाइल एपेंड मोड में है। यदि फ़ाइल मौजूद नहीं है, तो यह लिखने के लिए एक नई फ़ाइल बनाता है।
10 ab
बाइनरी प्रारूप में जोड़ने के लिए एक फ़ाइल खोलता है। फ़ाइल पॉइंटर फ़ाइल के अंत में है यदि फ़ाइल मौजूद है। यानी फाइल एपेंड मोड में है। यदि फ़ाइल मौजूद नहीं है, तो यह लिखने के लिए एक नई फ़ाइल बनाता है।
11 a+
जोड़ने और पढ़ने दोनों के लिए एक फ़ाइल खोलता है। फ़ाइल पॉइंटर फ़ाइल के अंत में है यदि फ़ाइल मौजूद है। फ़ाइल परिशिष्ट मोड में खुलती है। यदि फ़ाइल मौजूद नहीं है, तो यह पढ़ने और लिखने के लिए एक नई फ़ाइल बनाता है।
12 ab+
बाइनरी प्रारूप में जोड़ने और पढ़ने दोनों के लिए एक फ़ाइल खोलता है। फ़ाइल पॉइंटर फ़ाइल के अंत में है यदि फ़ाइल मौजूद है। फ़ाइल परिशिष्ट मोड में खुलती है। यदि फ़ाइल मौजूद नहीं है, तो यह पढ़ने और लिखने के लिए एक नई फ़ाइल बनाता है।

फ़ाइल ऑब्जेक्ट विशेषताएँ

एक बार जब कोई फ़ाइल खोली जाती है और आपके पास एक फ़ाइल ऑब्जेक्ट होता है, तो आप उस फ़ाइल से संबंधित विभिन्न जानकारी प्राप्त कर सकते हैं।

फ़ाइल ऑब्जेक्ट से संबंधित सभी विशेषताओं की सूची यहां दी गई है -

<टेबल> <थेड> क्रमांक <थ> मोड और विवरण 1 file.बंद
फ़ाइल बंद होने पर सत्य लौटाता है, अन्यथा गलत।
2 file.mode
एक्सेस मोड लौटाता है जिसके साथ फ़ाइल खोली गई थी।
3 file.name
फ़ाइल का नाम लौटाता है।
4 file.softspace
यदि स्थान स्पष्ट रूप से प्रिंट के साथ आवश्यक है, तो गलत है, अन्यथा सही है।

उदाहरण

#!/usr/bin/python# एक filefo खोलें =open("foo.txt", "wb")print "file का नाम:", fo.nameprint "Closed or not :", fo.closedprint "ओपनिंग मोड:", फ़ो.मोडप्रिंट "सॉफ्टस्पेस फ़्लैग:", फ़ो.सॉफ़्टस्पेस

आउटपुट

यह निम्नलिखित परिणाम उत्पन्न करता है -

फ़ाइल का नाम:foo.txtClosed or not:FalseOpening mode:wbSoftspace flag:0

निकट () विधि

किसी फ़ाइल ऑब्जेक्ट की क्लोज़ () विधि किसी भी अलिखित जानकारी को फ़्लश करती है और फ़ाइल ऑब्जेक्ट को बंद कर देती है, जिसके बाद कोई और लेखन नहीं किया जा सकता है।

जब किसी फ़ाइल का संदर्भ ऑब्जेक्ट किसी अन्य फ़ाइल को पुन:असाइन किया जाता है, तो पायथन स्वचालित रूप से एक फ़ाइल को बंद कर देता है। किसी फ़ाइल को बंद करने के लिए क्लोज़ () विधि का उपयोग करना एक अच्छा अभ्यास है।

सिंटैक्स

fileObject.close()

उदाहरण

#!/usr/bin/python# एक filefo खोलें =open("foo.txt", "wb")print "file का नाम:", fo.name# opend filefo.close() 

आउटपुट

यह निम्नलिखित परिणाम उत्पन्न करता है -

फ़ाइल का नाम:foo.txt

  1. सी # में फाइलों को संपीड़ित और डीकंप्रेस करना

    C# में फाइलों को कंप्रेस और डीकंप्रेस करने के लिए System.IO.Compression नेमस्पेस को C# में इस्तेमाल करें। संपीड़ित करें किसी फ़ाइल को ज़िप करने के लिए, फ़ाइलस्ट्रीम वर्ग के साथ GZipStream वर्ग का उपयोग करें। निम्नलिखित पैरामीटर सेट करें:ज़िप की जाने वाली फ़ाइल और आउटपुट ज़िप फ़ाइल का नाम। यहाँ, ou

  1. सी # में टेक्स्ट फाइलों को पढ़ना और लिखना

    StreamReader और StreamWriter क्लासेस का इस्तेमाल डेटा से टेक्स्ट फाइल तक पढ़ने और लिखने के लिए किया जाता है। टेक्स्ट फ़ाइल पढ़ें - Using System; using System.IO; namespace FileApplication {    class Program {       static void Main(string[] args) {       &nb

  1. पायथन में ओपनपीएक्सएल मॉड्यूल का उपयोग करके एक्सेल फाइलों को पढ़ना और लिखना

    परिचय ओपनपीएक्सएल एक्सेल 2010 xlsx/xlsm/xltx/xltm फाइलों को पढ़ने/लिखने के लिए एक पायथन लाइब्रेरी है। इसका जन्म मौजूदा पुस्तकालय की कमी के कारण पाइथन से मूल रूप से ऑफिस ओपन एक्सएमएल प्रारूप पढ़ने/लिखने के लिए हुआ था। एक एक्सेल फ़ाइल जिसे हम संचालन के लिए उपयोग करते हैं, वर्कबुक कहलाती है जिसमें न