कंडिशनल बूलियन लॉजिक के साथ पायथन सूची प्रतिस्थापन
मानों की एक सूची को देखते हुए, आप विशिष्ट तत्वों को चुनिंदा रूप से किसी के आधार पर किसी के साथ बदलने की इच्छा कर सकते हैं स्थिति। फ़ंक्शन कंडीशन() द्वारा परिभाषित शर्त, यह निर्धारित कर सकती है कि किसी तत्व को उसके मूल्य के आधार पर प्रतिस्थापित किया जाए या नहीं। यह प्रश्न विषम संख्या वाले तत्वों को प्रतिस्थापित करने वाली एक उदाहरण स्थिति प्रदान करते हुए पायथन में इस प्रतिस्थापन को प्राप्त करने के विभिन्न तरीकों की खोज करता है।
समाधान 1: सूची समझ
सबसे प्रभावी तरीका इस प्रतिस्थापन को करने के लिए सूची समझ का उपयोग करना है। यह दृष्टिकोण मेल खाने वाले तत्वों को प्रतिस्थापित करते समय मूल क्रम को संरक्षित करते हुए एक नई सूची उत्पन्न करता है:
new_items = [x if x % 2 else None for x in items]
इस उदाहरण में, 2 (सम संख्याओं) से विभाज्य तत्वों को बरकरार रखा जाता है, जबकि विषम संख्याओं को किसी से नहीं बदला जाता है।
समाधान 2: इन-प्लेस संशोधन
वैकल्पिक रूप से, आप संशोधित कर सकते हैं मूल सूची सीधे. हालाँकि, यह दृष्टिकोण थोड़ा कम कुशल है:
for index, item in enumerate(items):
if not (item % 2):
items[index] = None
यह विधि सूची को दोहराती है और विषम संख्या वाले तत्वों को स्थान पर कोई नहीं से बदल देती है।
समय जटिलता विश्लेषण
दोनों समाधानों में O(n) की एक रैखिक समय जटिलता है, जो दर्शाता है कि सूची में तत्वों की संख्या के साथ उनका रनटाइम आनुपातिक रूप से बढ़ता है।
प्रदर्शन बेंचमार्क
प्रदर्शन बेंचमार्क दो समाधानों के बीच नगण्य अंतर दिखाते हैं। हालाँकि, बड़ी सूचियों के लिए, सूची की समझ थोड़ी तेज़ है।
अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।
Copyright© 2022 湘ICP备2022001581号-3