Python में बाइट स्ट्रिंग अक्षर b से पहले वाली स्ट्रिंग है। इस लेख में हम देखेंगे कि बाइटकोड स्ट्रिंग वाली डिक्शनरी को सामान्य डिक्शनरी में कैसे बदलें जो केवल स्ट्रिंग्स दर्शाती है।
decode और ascii के साथ
Python स्ट्रिंग विधि decode() एन्कोडिंग के लिए पंजीकृत कोडेक का उपयोग करके स्ट्रिंग को डिकोड करती है। यह डिफ़ॉल्ट स्ट्रिंग एन्कोडिंग पर डिफ़ॉल्ट होती है। हम इसका उपयोग बाइटकोड मान को सामान्य ASCII मानों में बदलने के लिए करते हैं, decode फंक्शन के पैरामीटर के रूप में ascii की आपूर्ति करके।
उदाहरण
bstring = {b'day': b'Tue', b'time': b'2 pm', b'subject': b'Graphs'} print(bstring) # decode का उपयोग stringA = {y.decode('ascii'): bstring.get(y).decode('ascii') for y in bstring.keys()} # परिणाम print(stringA)आउटपुट
उपरोक्त कोड चलाने पर हमें निम्नलिखित परिणाम मिलता है −
{'subject': 'Graphs', 'day': 'Tue', 'time': '2 pm'} {u'time': u'2 pm', u'day': u'Tue', u'subject': u'Graphs'}decode और utf-8 के साथ
हम उपरोक्त के समान दृष्टिकोण ले सकते हैं लेकिन इस बार utf-8 का उपयोग करें। की-वैल्यू पेयर के लिए एक फॉर लूप डिज़ाइन करें और प्रत्येक पेयर के माध्यम से पुनरावृति करके मानों को utf-8 प्रतिनिधित्व में बदलें।
उदाहरण
bstring = {b'day': b'Tue', b'time': b'2 pm', b'subject': b'Graphs'} print(bstring) # decode का उपयोग stringA = {} for key, value in bstring.items(): stringA[key.decode("utf-8")] = value.decode("utf-8") # परिणाम print(stringA)आउटपुट
उपरोक्त कोड चलाने पर हमें निम्नलिखित परिणाम मिलता है −
{'subject': 'Graphs', 'day': 'Tue', 'time': '2 pm'} {u'time': u'2 pm', u'day': u'Tue', u'subject': u'Graphs'}