Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> Python

Python - 2D लिस्ट को फ्लैटर्न (1D में बदलना) करने के तरीके

लिस्ट एक कलेक्शन है जो ऑर्डर्ड और चेंजेबल होता है। Python में लिस्ट को स्क्वायर ब्रैकेट्स के साथ लिखा जाता है। आप इंडेक्स नंबर को रेफर करके लिस्ट आइटम्स को एक्सेस करते हैं। नेगेटिव इंडेक्सिंग का मतलब अंत से शुरू होता है, -1 लास्ट आइटम को रेफर करता है। आप रेंज की शुरुआत और अंत को स्पेसिफाई करके इंडेक्स की एक रेंज स्पेसिफाई कर सकते हैं। रेंज स्पेसिफाई करते समय, रिटर्न वैल्यू स्पेसिफाइड आइटम्स के साथ एक नई लिस्ट होगी।

उदाहरण

# chain.from_iterable का उपयोग करके
# chain इम्पोर्ट करना
from itertools import chain

ini_list = [[1, 2, 3],
            [3, 6, 7],
            [7, 5, 4]]

# प्रारंभिक लिस्ट प्रिंट करना
print("प्रारंभिक लिस्ट ", str(ini_list))

# 2D लिस्ट को 1D में कन्वर्ट करना
# chain.from_iterable का उपयोग करके
flatten_list = list(chain.from_iterable(ini_list))

# फ्लैट लिस्ट प्रिंट करना
print("अंतिम_परिणाम", str(flatten_list))

# लिस्ट कॉम्प्रिहेंशन का उपयोग करके
# chain इम्पोर्ट करना (आवश्यक नहीं, लेकिन मूल कोड में है)
from itertools import chain

ini_list = [[1, 2, 3],
            [3, 6, 7],
            [7, 5, 4]]

# प्रारंभिक लिस्ट प्रिंट करना
print("प्रारंभिक लिस्ट ", str(ini_list))

# 2D लिस्ट को 1D में कन्वर्ट करना
# लिस्ट कॉम्प्रिहेंशन का उपयोग करके
flatten_list = [j for sub in ini_list for j in sub]

# फ्लैट लिस्ट प्रिंट करना
print("अंतिम_परिणाम", str(flatten_list))

# functools.reduce का उपयोग करके
# functools इम्पोर्ट करना
from functools import reduce

ini_list = [[1, 2, 3],
            [3, 6, 7],
            [7, 5, 4]]

# प्रारंभिक लिस्ट प्रिंट करना
print("प्रारंभिक लिस्ट ", str(ini_list))

# 2D लिस्ट को 1D में कन्वर्ट करना
# functools.reduce का उपयोग करके
flatten_list = reduce(lambda z, y: z + y, ini_list)

# फ्लैट लिस्ट प्रिंट करना
print("अंतिम_परिणाम", str(flatten_list))

# sum() का उपयोग करके
ini_list = [[1, 2, 3],
            [3, 6, 7],
            [7, 5, 4]]

# प्रारंभिक लिस्ट प्रिंट करना
print("प्रारंभिक लिस्ट ", str(ini_list))

# 2D लिस्ट को 1D में कन्वर्ट करना
flatten_list = sum(ini_list, [])

# फ्लैट लिस्ट प्रिंट करना
print("अंतिम_परिणाम", str(flatten_list))

# लैम्ब्डा का उपयोग करके (रिकर्सिव - नेस्टेड लिस्ट के लिए)
ini_list = [[1, 2, 3],
            [3, 6, 7],
            [7, 5, 4]]

# लैम्ब्डा फंक्शन
flatten_list = lambda y: [x for a in y for x in flatten_list(a)] if type(y) is list else [y]

print("प्रारंभिक लिस्ट ", ini_list)
# फ्लैट लिस्ट प्रिंट करना
print("फ्लैटन्ड लिस्ट ", flatten_list(ini_list))

आउटपुट

('प्रारंभिक लिस्ट ', '[[1, 2, 3], [3, 6, 7], [7, 5, 4]]')
('अंतिम_परिणाम', '[1, 2, 3, 3, 6, 7, 7, 5, 4]')
('प्रारंभिक लिस्ट ', '[[1, 2, 3], [3, 6, 7], [7, 5, 4]]')
('अंतिम_परिणाम', '[1, 2, 3, 3, 6, 7, 7, 5, 4]')
('प्रारंभिक लिस्ट ', '[[1, 2, 3], [3, 6, 7], [7, 5, 4]]')
('अंतिम_परिणाम', '[1, 2, 3, 3, 6, 7, 7, 5, 4]')
('प्रारंभिक लिस्ट ', '[[1, 2, 3], [3, 6, 7], [7, 5, 4]]')
('अंतिम_परिणाम', '[1, 2, 3, 3, 6, 7, 7, 5, 4]')
('प्रारंभिक लिस्ट ', [[1, 2, 3], [3, 6, 7], [7, 5, 4]])
('फ्लैटन्ड लिस्ट ', [1, 2, 3, 3, 6, 7, 7, 5, 4])
  1. - Python में सूची बढ़ाना (5 अलग-अलग तरीके)

    सूचियां Python की सबसे अधिक उपयोग की जाने वाली डेटा संरचनाएं हैं। जब हम किसी सूची में अधिक तत्व जोड़ना चाहते हैं, तो सूची का विस्तार होता है। यह निम्नलिखित 5 अलग-अलग तरीकों से किया जा सकता है।प्लस ऑपरेटर का उपयोग करनायहां हम बस + ऑपरेटर का उपयोग करके एक नई सूची के तत्वों को जोड़ते हैं। व्यवहार वैसा

  1. - Python में सूची साफ़ करने के विभिन्न तरीके

    Python सूची में सभी तत्वों को साफ़ करना कई तरीकों से किया जा सकता है। नीचे कुछ मेथड हैं जिन्हें इसे प्राप्त करने के लिए लागू किया गया है।clear() का उपयोग करनायह फ़ंक्शन स्टैंडर्ड लाइब्रेरी का हिस्सा है और Python सूची को पूरी तरह से खाली कर देता है।Syntax: list_name.clear() list_name उपयोगकर्ता द्वार

  1. - Python में शैलो लिस्ट को फ्लैट कैसे करें?

    एक सिंपल और सीधा समाधान है दो नेस्टेड फॉर लूप्स का उपयोग करके सबलिस्ट्स से आइटम्स को एक फ्लैट लिस्ट में जोड़ना। lst = [[10, 20, 30, 40], [50, 60, 70, 80], [90, 100, 110, 120]] flatlist = [] for sublist in lst: for item in sublist: flatlist.append(item) print(flatlist) एक अधिक कॉम्पैक्ट