जबकि सूची समझ एक पूरी तरह से वैध जवाब है, तो आप सिर्फ प्रकार बदल रहे हैं के रूप में, यह विकल्प, the map()
built-in पर विचार के लायक हो सकता है:
>>> list_of_tuples = [(1, 2), (4, 5)]
>>> map(list, list_of_tuples)
[[1, 2], [4, 5]]
map()
अंतर्निहित बस दिए गए प्रत्येक तत्व के लिए एक कॉल करने योग्य लागू होता है। यह इस विशेष कार्य के लिए अच्छा बनाता है। आम तौर पर, सूची की समझ अधिक पठनीय और कुशल होती है (map()
के साथ कुछ भी जटिल करने के लिए आपको lambda
की आवश्यकता होती है), लेकिन जहां आप बस प्रकार बदलना चाहते हैं, map()
बहुत स्पष्ट और त्वरित हो सकता है।
ध्यान दें कि मैं 2.x का उपयोग कर रहा हूं, इसलिए हमें एक सूची मिलती है। यदि आप 3.x में एक सूची चाहते हैं, तो 3.x में आपको एक पुनरावृत्त (जो आलसी है) मिलेगा, बस list(map(...))
करें। यदि आप अपने उपयोग के लिए एक पुनरावर्तनीय के साथ ठीक हैं, itertools.imap()
2.x में आलसी map()
प्रदान करता है।
स्रोत
2013-02-12 11:50:30
मैंने सूची सूची समझाते हुए एक लिंक जोड़ने के लिए संपादित किया है। –