डेटा में हेरफेर करने के लिए पायथन के पास महान पुस्तकालय हैं। हमें दो क्रमागत संख्याओं का अधिकतम गुणनफल खोजने की आवश्यकता हो सकती है जो बड़ी स्ट्रिंग का हिस्सा हैं। इस लेख में हम इसे हासिल करने के तरीके देखेंगे।
ज़िप और अधिकतम के साथ
हम स्ट्रिंग को एक सूची में परिवर्तित करते हैं। फिर स्लाइसिंग की सहायता से क्रमागत तत्वों से जोड़े बनाएं। * लगाने से हम जोड़े को गुणा करते हैं और फिर प्रत्येक जोड़े से गुणा के परिणाम से अधिकतम मान लेते हैं।
उदाहरण
Astring = '5238521'
# Given string
print("Given String : ",Astring)
# Convert to list
Astring = list(Astring)
print("String converted to list:\n",Astring)
# Using max()
res = max(int(a) * int(b) for a, b in zip(Astring, Astring[1:]))
# Result
print("The maximum consecutive product is : " ,res) आउटपुट
उपरोक्त कोड को चलाने से हमें निम्नलिखित परिणाम मिलते हैं -
Given String : 5238521 String converted to list: ['5', '2', '3', '8', '5', '2', '1'] The maximum consecutive product is : 40
मानचित्र और अधिकतम के साथ
हम ऊपर के समान दृष्टिकोण अपनाते हैं। लेकिन हम लगातार पूर्णांकों की जोड़ी उत्पन्न करने के लिए मानचित्र फ़ंक्शन का उपयोग करते हैं। फिर इस जोड़ी में संख्याओं को गुणा करने के लिए ऑपरेटर मॉड्यूल से mul फ़ंक्शन का उपयोग करें। परिणाम का अधिकतम मूल्य प्राप्त करने के लिए अंत में अधिकतम फ़ंक्शन लागू करें।
उदाहरण
from operator import mul
Astring = '5238521'
# Given string
print("Given String : ",Astring)
# Convert to list
Astring = list(Astring)
print("String converted to list:\n",Astring)
# Using max()
res = max(map(mul, map(int, Astring), map(int, Astring[1:])))
# Result
print("The maximum consecutive product is : " ,res) आउटपुट
उपरोक्त कोड को चलाने से हमें निम्नलिखित परिणाम मिलते हैं -
Given String : 5238521 String converted to list: ['5', '2', '3', '8', '5', '2', '1'] The maximum consecutive product is : 40