7.2। पठन और लेखन फाइलें
खुला () फ़ाइल ऑब्जेक्ट लौटाता है, और आमतौर पर दो तर्कों के साथ उपयोग किया जाता है: खुला (फ़ाइल नाम, मोड)।
>>> f = open('workfile', 'w')
>>> print f <open file 'workfile', mode 'w' at 80a0960>
पहला तर्क एक स्ट्रिंग है जिसमें फ़ाइल नाम है। दूसरा तर्क एक और स्ट्रिंग है जिसमें कुछ वर्णों का वर्णन है जिसमें फ़ाइल का उपयोग किया जाएगा। मोड 'r' हो सकता है जब फ़ाइल केवल पढ़ने के लिए होगी, 'w' केवल लिखने के लिए (उसी नाम से एक मौजूदा फ़ाइल मिटा दी जाएगी), और 'a' फ़ाइल को जोड़ने के लिए खोलता है; फ़ाइल में लिखा गया कोई भी डेटा स्वचालित रूप से अंत में जोड़ा जाता है। 'r +' पढ़ने और लिखने दोनों के लिए फाइल खोलता है। मोड तर्क वैकल्पिक है; यदि इसे छोड़ दिया जाता है तो 'r' मान लिया जाएगा।
विंडोज पर, मोड में संलग्न 'बी' फ़ाइल को बाइनरी मोड में खोलता है, इसलिए 'आरबी', 'डब्ल्यूबी' और 'आर + बी' जैसे मोड भी हैं। विंडोज पर पायथन पाठ और बाइनरी फ़ाइलों के बीच अंतर करता है; जब डेटा पढ़ा या लिखा जाता है, तो टेक्स्ट फ़ाइलों में अंत-पंक्ति वर्ण स्वचालित रूप से थोड़े बदल जाते हैं। डेटा को फ़ाइल करने के लिए पर्दे के पीछे का यह संशोधन ASCII टेक्स्ट फ़ाइलों के लिए ठीक है, लेकिन यह JPEG या EXE फ़ाइलों की तरह ही द्विआधारी डेटा को भ्रष्ट कर देगा। ऐसी फ़ाइलों को पढ़ते और लिखते समय बाइनरी मोड का उपयोग करने के लिए बहुत सावधान रहें। यूनिक्स पर, यह मोड में एक 'बी' को जोड़ने के लिए चोट नहीं करता है, इसलिए आप इसे सभी बाइनरी फ़ाइलों के लिए प्लेटफ़ॉर्म-स्वतंत्र रूप से उपयोग कर सकते हैं।