चूंकि कंप्यूटर केवल बाइट्स के डेटा को स्टोर कर सकते हैं, हमें विभिन्न डेटा प्रारूपों को बाइट डेटा प्रारूप में बदलने की आवश्यकता होती है। उदाहरण के लिए, छवियाँ बाइट्स बनकर PNG, JPEG आदि के साथ स्टोर होती हैं। इसी तरह संगीत .WAV, .MP3 आदि के रूप में स्टोर होता है। इन प्रारूपों को बनाने और प्रबंधित करने के लिए जिम्मेदार सॉफ़्टवेयर इस डेटा को बाइट्स में बदलने का कार्य करता है ताकि वे स्टोर हो सकें। पायथन में बाइट ऑब्जेक्ट बाइट्स का एक क्रम है जो मानव-पठनीय नहीं है। लेकिन एक वर्ण स्ट्रिंग वर्णों का एक क्रम है जो मानव-पठनीय है। एक वर्ण को कंप्यूटर में बाइट्स के रूप में संग्रहीत करने से पहले एन्कोड किया जाता है।
एन्कोडिंग
कैरेक्टर स्ट्रिंग को डिस्क में संग्रहीत करने से पहले, इसे एन्कोड करना होगा। पायथन में स्ट्रिंग को एन्कोड करने का फ़ंक्शन encode है जैसा कि नीचे दिखाया गया है। यहाँ हम ASCII एन्कोडिंग लागू कर रहे हैं।
उदाहरण
print('Best Tutorials'.encode('ASCII'))
आउटपुट
b'Best Tutorials'
डीकोडिंग
जब डिस्क से बाइट्स पढ़े जाते हैं, तो उन्हें मानव-पठनीय बनाने के लिए डीकोड करने की आवश्यकता होती है। पायथन में, हम एन्कोडेड बाइट्स को स्ट्रिंग में बदलने के लिए decode फ़ंक्शन का उपयोग कर सकते हैं।
उदाहरण
print(b'Best Tutorials'.decode('ASCII'))
आउटपुट
Best Tutorials
निम्नलिखित मुख्य बिंदुओं पर ध्यान दिया जाना चाहिए।
- स्ट्रिंग्स वर्णों का क्रम हैं लेकिन बाइट्स ऑब्जेक्ट्स बाइट्स का क्रम हैं।
- स्ट्रिंग्स केवल मानव-पठनीय हैं लेकिन बाइट्स मशीन-पठनीय हैं।
- बाइट्स सीधे डिस्क पर स्टोर होते हैं, जबकि वर्णों को डिस्क में स्टोर होने से पहले एन्कोडिंग की आवश्यकता होती है।