Base64 और हेक्साडेसीमल (हेक्स) टेक्स्ट फॉर्मेट में बाइनरी डेटा को दर्शाने के लिए आवश्यक एन्कोडिंग स्कीम हैं। Base64 केवल टेक्स्ट माध्यमों से डेटा संचारित करने में उत्कृष्ट है, जबकि हेक्स मानव-पठनीय बाइनरी डेटा प्रतिनिधित्व प्रदान करता है। यह गाइड हेक्साडेसीमल स्ट्रिंग्स को बेस64 में बदलने के लिए कुशल पाइथन विधियों का विवरण देता है।
विषयवस्तु की तालिका
codecs
मॉड्यूल के साथ HEX को BASE64 में बदलनाbase64
मॉड्यूल के साथ HEX को BASE64 में बदलनाbinascii
मॉड्यूल के साथ HEX को BASE64 में बदलना
codecs
मॉड्यूल के साथ HEX को BASE64 में बदलना
codecs
मॉड्यूल बहुमुखी एन्कोडिंग हैंडलिंग प्रदान करता है, जिसमें हेक्स और बेस64 भी शामिल हैं। यह विधि संक्षिप्त और कुशल है।
import codecs
def hex_to_base64_codecs(hex_string):
"""codecs मॉड्यूल का उपयोग करके एक हेक्साडेसीमल स्ट्रिंग को बेस64 एन्कोडेड स्ट्रिंग में बदलता है।
Args:
hex_string: परिवर्तित करने के लिए हेक्साडेसीमल स्ट्रिंग।
Returns:
बेस64 एन्कोडेड स्ट्रिंग। यदि इनपुट अमान्य है तो None देता है।
"""
try:
bytes_object = codecs.decode(hex_string, 'hex')
base64_bytes = codecs.encode(bytes_object, 'base64')
return base64_bytes.decode('utf-8')
except Exception as e:
print(f"त्रुटि: {e}")
return None
hex_string = "48656c6c6f20576f726c64"
base64_string = hex_to_base64_codecs(hex_string)
print(f"हेक्स: {hex_string}")
print(f"बेस64: {base64_string}") # आउटपुट: SGVsbG8gV29ybGQ=
यह कोड codecs.decode('hex')
का उपयोग करके हेक्स स्ट्रिंग को बाइट्स में डिकोड करता है, इसे codecs.encode('base64')
के साथ बेस64 में एन्कोड करता है, और अंत में परिणाम को .decode('utf-8')
का उपयोग करके एक स्ट्रिंग में डिकोड करता है। मजबूत त्रुटि हैंडलिंग अमान्य इनपुट के सुचारू प्रबंधन को सुनिश्चित करता है।
base64
मॉड्यूल के साथ HEX को BASE64 में बदलना
base64
मॉड्यूल सीधे बेस64 एन्कोडिंग/डिकोडिंग को संभालता है। हालाँकि, इसे बाइट्स इनपुट की आवश्यकता होती है, जिसके लिए हेक्स स्ट्रिंग से रूपांतरण चरण की आवश्यकता होती है।
import base64
def hex_to_base64_base64(hex_string):
"""base64 मॉड्यूल का उपयोग करके एक हेक्साडेसीमल स्ट्रिंग को बेस64 एन्कोडेड स्ट्रिंग में बदलता है।
Args:
hex_string: परिवर्तित करने के लिए हेक्साडेसीमल स्ट्रिंग।
Returns:
बेस64 एन्कोडेड स्ट्रिंग। यदि इनपुट अमान्य है तो None देता है।
"""
try:
bytes_object = bytes.fromhex(hex_string)
base64_bytes = base64.b64encode(bytes_object)
return base64_bytes.decode('utf-8')
except Exception as e:
print(f"त्रुटि: {e}")
return None
hex_string = "48656c6c6f20576f726c64"
base64_string = hex_to_base64_base64(hex_string)
print(f"हेक्स: {hex_string}")
print(f"बेस64: {base64_string}") # आउटपुट: SGVsbG8gV29ybGQ=
यह base64.b64encode()
एन्कोडिंग से पहले सीधे हेक्स-टू-बाइट्स रूपांतरण के लिए bytes.fromhex()
का उपयोग करता है।
binascii
मॉड्यूल के साथ HEX को BASE64 में बदलना
binascii
मॉड्यूल हेक्स और ASCII सहित विभिन्न प्रतिनिधित्व रूपांतरणों के लिए बाइनरी प्रदान करता है।
import binascii
import base64
def hex_to_base64_binascii(hex_string):
"""binascii मॉड्यूल का उपयोग करके एक हेक्साडेसीमल स्ट्रिंग को बेस64 एन्कोडेड स्ट्रिंग में बदलता है।
Args:
hex_string: परिवर्तित करने के लिए हेक्साडेसीमल स्ट्रिंग।
Returns:
बेस64 एन्कोडेड स्ट्रिंग। यदि इनपुट अमान्य है तो None देता है।
"""
try:
bytes_object = binascii.unhexlify(hex_string)
base64_bytes = base64.b64encode(bytes_object)
return base64_bytes.decode('utf-8')
except binascii.Error:
print("त्रुटि: अमान्य हेक्साडेसीमल स्ट्रिंग")
return None
except Exception as e:
print(f"त्रुटि: {e}")
return None
hex_string = "48656c6c6f20576f726c64"
base64_string = hex_to_base64_binascii(hex_string)
print(f"हेक्स: {hex_string}")
print(f"बेस64: {base64_string}") # आउटपुट: SGVsbG8gV29ybGQ=
binascii.unhexlify()
हेक्स स्ट्रिंग को बाइट्स में बदलता है, बाद में base64.b64encode()
का उपयोग करके एन्कोड किया जाता है। binascii.Error
के लिए विशिष्ट त्रुटि हैंडलिंग स्पष्टता बढ़ाती है।
ये उदाहरण पाइथन में हेक्स-टू-बेस64 रूपांतरण के लिए कई तरीके प्रस्तुत करते हैं। वह विधि चुनें जो आपकी आवश्यकताओं और कोडिंग शैली के अनुकूल हो। उत्पादन कोड में उचित त्रुटि हैंडलिंग को लागू करना याद रखें।