हम विभिन्न दृष्टिकोणों का उपयोग करके पायथन में एक बाइनरी संख्या का प्रतिनिधित्व करने वाले 0s और 1s की सूची को दशमलव संख्या में बदल सकते हैं। नीचे दिए गए उदाहरणों में हम int() विधि के साथ-साथ बिटवाइज़ लेफ्ट शिफ्ट ऑपरेटर का उपयोग करते हैं।
int का उपयोग करना ()
int() विधि दो तर्कों में लेती है और नीचे दिए गए सिंटैक्स के अनुसार इनपुट के आधार को बदल देती है।
int(x, base=10) Return an integer object constructed from a number or string x.
नीचे के उदाहरण में हम सूची के प्रत्येक तत्व को एक स्ट्रिंग के रूप में लेने के लिए int() विधि का उपयोग करते हैं और एक अंतिम स्ट्रिंग बनाने के लिए उनसे जुड़ते हैं जो आधार 10 के साथ पूर्णांक में परिवर्तित हो जाता है।
उदाहरण
List = [0, 1, 0, 1, 0, 1] print ("The List is : " + str(List)) # binary list to integer conversion result = int("".join(str(i) for i in List),2) # result print ("The value is : " + str(result))
उपरोक्त कोड को चलाने से हमें निम्नलिखित परिणाम मिलते हैं -
The List is : [1, 1, 0, 1, 0, 1] The value is : 53
बिटवाइज लेफ्ट शिफ्ट ऑपरेटर का उपयोग करना
बिटवाइज़ लेफ्ट शिफ्ट ऑपरेटर अंकों की दी गई सूची को बाइनरी फॉर्म में शून्य में जोड़ने के बाद पूर्णांक में परिवर्तित करता है। फिर bitwise या इस परिणाम में जोड़ने के लिए प्रयोग किया जाता है। हम सूची में प्रत्येक अंक के माध्यम से पुनरावृति करने के लिए लूप के लिए उपयोग करते हैं।
उदाहरण
List = [1, 0, 0, 1, 1, 0] print ("The values in list is : " + str(List)) # binary list to integer conversion result = 0 for digits in List: result = (result << 1) | digits # result print ("The value is : " + str(result))
उपरोक्त कोड को चलाने से हमें निम्नलिखित परिणाम मिलते हैं -
The values in list is : [1, 0, 0, 1, 1, 0] The value is : 38