जब रिकर्सन तकनीक का उपयोग किए बिना किसी सूची को समतल करने की आवश्यकता होती है, तो लैम्ब्डा फ़ंक्शन, 'योग' विधि, 'मानचित्र' विधि और 'आइसिंस्टेंस' विधि का उपयोग किया जा सकता है।
एक सूची का उपयोग विषम मूल्यों को संग्रहीत करने के लिए किया जा सकता है (अर्थात किसी भी डेटा प्रकार का डेटा जैसे पूर्णांक, फ़्लोटिंग पॉइंट, स्ट्रिंग्स, और इसी तरह)।
'आइइंस्टेंस' विधि यह देखने के लिए जांच करती है कि दिया गया पैरामीटर किसी विशिष्ट डेटा प्रकार से संबंधित है या नहीं।
बेनामी फ़ंक्शन एक फ़ंक्शन है जिसे बिना नाम के परिभाषित किया जाता है। सामान्य तौर पर, पायथन में फ़ंक्शन को 'डीफ़' कीवर्ड का उपयोग करके परिभाषित किया जाता है, लेकिन अनाम फ़ंक्शन को 'लैम्ब्डा' कीवर्ड की मदद से परिभाषित किया जाता है। यह एक अभिव्यक्ति लेता है, लेकिन कई तर्क ले सकता है। यह व्यंजक का उपयोग करता है और उसका परिणाम देता है।
मैप फ़ंक्शन किसी दिए गए फ़ंक्शन/ऑपरेशन को प्रत्येक आइटम पर एक पुनरावर्तनीय (जैसे सूची, टपल) में लागू करता है। यह परिणाम के रूप में एक सूची देता है।
'योग' विधि एक पुनरावृत्त में मौजूद संख्यात्मक मान जोड़ती है।
उदाहरण
नीचे उसी के लिए एक प्रदर्शन है -
my_list = [[[11,[[32]],[[[53]]]],[[64],75]], [[6, 89, 99]]] flattened_list = lambda my_list: sum(map(flattened_list,my_list),[]) if isinstance(my_list,list) else [my_list] print("The original list is : ") print(my_list) print("The flattened list is :") print(flattened_list(my_list))
आउटपुट
The original list is : [[[11, [[32]], [[[53]]]], [[64], 75]], [[6, 89, 99]]] The flattened list is : [11, 32, 53, 64, 75, 6, 89, 99]
स्पष्टीकरण
- नेस्टेड सूची परिभाषित है, और कंसोल पर प्रदर्शित होती है।
- तत्वों को 'योग' विधि का उपयोग करके सारांशित किया जाता है, और यह 'मानचित्र' विधि का उपयोग करके प्रत्येक तत्व पर लागू होता है।
- इस ऑपरेशन का परिणाम एक चर को सौंपा गया है।
- यह कंसोल पर आउटपुट के रूप में प्रदर्शित होता है।