पायथन में बाइटियर को बाइट्स में बदलें

Convert Bytearray Bytes Python



कई अलग-अलग प्रकार के डेटा ऑब्जेक्ट पायथन द्वारा समर्थित हैं। उनमें से दो वस्तुएं हैं बाइटअरे तथा बाइट्स . NS बाइटएरे () फ़ंक्शन बाइट्स की एक सरणी वस्तु देता है। यह ऑब्जेक्ट परिवर्तनशील है और 0 से 255 तक पूर्णांक संख्या का समर्थन करता है बाइट्स () फ़ंक्शन बाइट्स ऑब्जेक्ट देता है, परिवर्तनशील नहीं है, और 0 से 255 तक पूर्णांकों का समर्थन करता है। यह आलेख इन कार्यों का वर्णन करेगा और बताएगा कि कैसे बाइटअरे वस्तुओं को में परिवर्तित किया जा सकता है बाइट्स वस्तुओं।

बायटेरे का सिंटैक्स () विधि

बाइटअरे ([डेटा स्रोत[,एन्कोडिंग[,त्रुटियों]]])

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







बाइट्स का सिंटैक्स () विधि

बाइट्स ([डेटा स्रोत[,एन्कोडिंग[,त्रुटियों]]])

के सभी तर्क बाइट्स () फ़ंक्शन वैकल्पिक हैं, जैसे बाइटएरे () तरीका। इन तर्कों के कार्य भी समान हैं बाइटएरे () विधि, ऊपर वर्णित।



परिवर्तित करने की विधि बाइटअरे प्रति बाइट्स पायथन में इस प्रक्रिया को बेहतर ढंग से समझने के लिए कुछ सरल उदाहरणों का उपयोग करते हुए नीचे दिखाया गया है।



उदाहरण 1: सूची डेटा को बाइटियर से बाइट्स में बदलें

जब bytearray () फ़ंक्शन में केवल एक तर्क होता है, तो तर्क का मान एक शब्दकोश डेटाम या चर होगा। निम्न उदाहरण दिखाता है कि कैसे एक डिक्शनरी ऑब्जेक्ट को एक बाइटियर ऑब्जेक्ट में परिवर्तित किया जा सकता है और कैसे एक बाइटियर ऑब्जेक्ट को बाइट ऑब्जेक्ट में परिवर्तित किया जा सकता है। अगला, लूप के लिए पहला ASCII कोड की अनुवाद तालिका के मूल्यों को प्रदर्शित करने के लिए उपयोग किया जाता है और दूसरा लूप के लिए संबंधित ASCII कोड के वर्णों को प्रदर्शित करने के लिए उपयोग किया जाता है।





#!/usr/bin/env python3

# सूची को परिभाषित करें
सूची डेटा= [72, 69, 76, 76, 79]
# सूची की सामग्री प्रिंट करें
प्रिंट('एनशब्दकोश मान हैं:एन',सूची डेटा)

# सूची के साथ बायटेरे ऑब्जेक्ट को इनिशियलाइज़ करें
बाइटअरेऑब्जेक्ट= बाइटअरे(सूची डेटा)
# बायटेरियर ऑब्जेक्ट वैल्यू प्रिंट करें
प्रिंट('एनबायटेरे () विधि का आउटपुट:एन',बाइटअरेऑब्जेक्ट)

# बायटेरियर ऑब्जेक्ट को बाइट्स ऑब्जेक्ट में बदलें
बाइटऑब्जेक्ट= बाइट्स(बाइटअरेऑब्जेक्ट)
# बाइट्स ऑब्जेक्ट वैल्यू प्रिंट करें
प्रिंट('एनबाइट्स () विधि का आउटपुट:एन',बाइटऑब्जेक्ट)

प्रिंट('एनबाइट्स के ASCII मान')
# लूप का उपयोग करके बाइट्स ऑब्जेक्ट को पुनरावृत्त करें
के लियेबजेमेंबाइटऑब्जेक्ट:
प्रिंट(बजे,'',समाप्त='')

प्रिंट('एनबाइट्स के स्ट्रिंग मान')
# लूप का उपयोग करके बाइट्स ऑब्जेक्ट को पुनरावृत्त करें
के लियेबजेमेंबाइटऑब्जेक्ट:
प्रिंट(chr(बजे),'',समाप्त='')

उत्पादन

स्क्रिप्ट चलाने के बाद निम्न आउटपुट दिखाई देगा। यहाँ, 72, 69, 76, और 79 क्रमशः 'H,' 'E,' 'L,' और 'O,' के ASCII कोड हैं।



उदाहरण 2: स्ट्रिंग डेटा को बाइटएरे से बाइट्स में बदलें

निम्न उदाहरण स्ट्रिंग डेटा में बाइट ऑब्जेक्ट को बाइट ऑब्जेक्ट में बदलने को दर्शाता है। इस स्क्रिप्ट के बायटेयर () विधि में दो तर्कों का उपयोग किया जाता है। पहले तर्क में स्ट्रिंग मान होता है, जबकि दूसरे तर्क में एन्कोडिंग स्ट्रिंग होती है। यहाँ, 'utf-8' एन्कोडिंग का उपयोग बायटेरे ऑब्जेक्ट में बदलने के लिए किया जाता है। NS डिकोड () बाइट ऑब्जेक्ट को स्ट्रिंग डेटा में बदलने के लिए स्क्रिप्ट में विधि का उपयोग किया जाता है। रूपांतरण के समय उसी एन्कोडिंग का उपयोग किया जाता है।

#!/usr/bin/env python3

# एक स्ट्रिंग मान लें
मूलपाठ= इनपुट('कोई भी टेक्स्ट दर्ज करें:एन')

# स्ट्रिंग और एन्कोडिंग के साथ बायटेरे ऑब्जेक्ट को इनिशियलाइज़ करें
बाइटअरोऑब्ज= बाइटअरे(मूलपाठ, 'यूटीएफ़-8')
प्रिंट('एनबाइट्सएरे () विधि का आउटपुट:एन',बाइटअरोऑब्ज)

# बायटेरे को बाइट्स में बदलें
बाइटऑब्ज= बाइट्स(बाइटअरोऑब्ज)
प्रिंट('एनबाइट्स () विधि का आउटपुट:एन',बाइटऑब्ज)

# emcoding का उपयोग करके बाइट्स मान को स्ट्रिंग में बदलें
प्रिंट('एनबाइट्स के स्ट्रिंग मान')
प्रिंट(बाइटऑब्ज.व्याख्या करना('यूटीएफ़-8'))

उत्पादन

स्क्रिप्ट चलाने के बाद निम्न आउटपुट दिखाई देगा।

उदाहरण 3: इंटीजर डेटा को बाइटियर से बाइट्स में कनवर्ट करें

पिछले उदाहरण डिक्शनरी और स्ट्रिंग डेटा के आधार पर बाइटएरे और बाइट्स के रूपांतरण को दिखाते हैं। यह तीसरा उदाहरण इनपुट डेटा के आधार पर बाइटियर को बाइट्स में बदलने को दर्शाता है। यहां, इनपुट मान को एक पूर्णांक मान में परिवर्तित किया जाता है और bytearray() फ़ंक्शन के माध्यम से एक तर्क के रूप में पारित किया जाता है, और bytearray ऑब्जेक्ट को फिर बाइट्स ऑब्जेक्ट में परिवर्तित किया जाता है। पूर्णांक संख्या के आधार पर शून्य मान बायटेरे और बाइट्स ऑब्जेक्ट के आउटपुट के रूप में दिखाए जाते हैं। बाइट्स की कुल संख्या को स्क्रिप्ट के अंत में लेन () विधि के माध्यम से गिना जाता है, और bytearray () विधि में तर्क के रूप में पारित पूर्णांक मान के बराबर होगा।

#!/usr/bin/env python3

प्रयत्न:
# कोई भी संख्या मान लें
मूलपाठ= NS(इनपुट('कोई भी नंबर दर्ज करें:'))

# बायटेरियर ऑब्जेक्ट को नंबर के साथ इनिशियलाइज़ करें
बाइटअरोऑब्ज= बाइटअरे(मूलपाठ)
प्रिंट('एनबाइट्सएरे () विधि का आउटपुट:एन',बाइटअरोऑब्ज)

# बायटेरे ऑब्जेक्ट को बाइट्स ऑब्जेक्ट में बदलें
बाइटऑब्ज= बाइट्स(बाइटअरोऑब्ज)
प्रिंट('एनबाइट्स () विधि का आउटपुट:एन',बाइटऑब्ज)

# बाइट्स ऑब्जेक्ट का आकार प्रिंट करें
प्रिंट('एनबाइट्स ऑब्जेक्ट की लंबाई: ',लेन(बाइटऑब्ज))
के अलावा ValueError:
प्रिंट('कोई भी संख्यात्मक मान दर्ज करें')

उत्पादन

स्क्रिप्ट चलाने के बाद, निम्नलिखित आउटपुट में इनपुट के रूप में 6 लिया जाता है। छह अशक्त मान बायटियर और बाइट्स के आउटपुट के रूप में प्रदर्शित होते हैं। जब शून्य मानों की गणना की जाती है तो यह 6 प्रदर्शित होता है।

उदाहरण 4: एपेंड () का उपयोग करके बायटेरे बनाएं और बाइट्स में कनवर्ट करें

निम्न उदाहरण दिखाता है कि एपेंड () विधि के माध्यम से बाइटियर ऑब्जेक्ट कैसे बनाया जा सकता है और बाइट्स में परिवर्तित किया जा सकता है। arrVal वेरिएबल को यहां बायटेरियर ऑब्जेक्ट के रूप में घोषित किया गया है। इसके बाद, एरे में छह तत्वों को जोड़ने के लिए एपेंड () विधि को छह बार कहा जाता है। वर्णों के ASCII कोड, 'P,' 'y,' 't,' 'h,' 'o,' और 'n,' क्रमशः 80, 121, 116, 104, 111 और 1120 हैं। इन्हें bytearray ऑब्जेक्ट में जोड़ा जाता है। यह सरणी वस्तु बाद में बाइट्स ऑब्जेक्ट में परिवर्तित हो जाती है।

#!/usr/bin/env python3

# बायटियर बनाएं और एपेंड () विधि का उपयोग करके आइटम जोड़ें
arrVal= बाइटअरे()
आगमनसंलग्न(80)
आगमनसंलग्न(१२१)
आगमनसंलग्न(११६)
आगमनसंलग्न(१०४)
आगमनसंलग्न(111)
आगमनसंलग्न(110)

# बाइटअरे () मान प्रिंट करें
प्रिंट('एनबायटेरे () विधि का आउटपुट:एन',arrVal)

# बायटेरे ऑब्जेक्ट को बाइट्स ऑब्जेक्ट में बदलें
बाइटऑब्जेक्ट= बाइट्स(arrVal)

# बाइट्स ऑब्जेक्ट वैल्यू प्रिंट करें
प्रिंट('एनबाइट्स () विधि का आउटपुट:एन',बाइटऑब्जेक्ट)

उत्पादन

स्क्रिप्ट चलाने के बाद निम्न आउटपुट दिखाई देगा।

निष्कर्ष

इस आलेख में बाइटियर ऑब्जेक्ट बनाने के बाद बाइटियर को बाइट्स में परिवर्तित करने के लिए विभिन्न विधियों को दिखाया गया है। इस लेख को पढ़ने के बाद, मुझे उम्मीद है कि आप बाइटएरे और बाइट्स की अवधारणा को समझ गए होंगे, बाइटियर को बाइट्स में बदलने का तरीका जानते होंगे, और बाइट्स के आउटपुट को स्ट्रिंग और कैरेक्टर के रूप में प्रदर्शित करने में सक्षम होंगे।