कभी-कभी पाइथन का उपयोग करके मैट्रिक्स बनाते समय हमें यह नियंत्रित करने की आवश्यकता हो सकती है कि परिणामी मैट्रिक्स में दिए गए तत्व को कितनी बार दोहराया जाता है। इस लेख में हम देखेंगे कि तत्वों को सूची के रूप में दिए जाने पर आवश्यक संख्या में तत्वों के साथ एक मैट्रिक्स कैसे बनाया जाता है।
ज़िप का उपयोग करना
हम मैट्रिक्स में उपयोग किए जाने वाले तत्वों के साथ एक सूची घोषित करते हैं। फिर हम एक और सूची घोषित करते हैं जो मैट्रिक्स में तत्व की घटनाओं की संख्या रखेगी। ज़िप फ़ंक्शन का उपयोग करके हम परिणामी मैट्रिक्स बना सकते हैं जिसमें तत्वों को व्यवस्थित करने के लिए लूप शामिल होगा।
उदाहरण
listA = ['m', 'n', 'p','q'] # Count of elements elem_count = [1,0,3,2] # Given Lists print("Given List of elements: " ,listA) print("Count of elements : ",elem_count) # Creating Matrix res = [[x] * y for x, y in zip(listA, elem_count)] # Result print("The new matrix is : " ,res)
आउटपुट
उपरोक्त कोड को चलाने से हमें निम्नलिखित परिणाम मिलते हैं -
Given List of elements: ['m', 'n', 'p', 'q'] Count of elements : [1, 0, 3, 2] The new matrix is : [['m'], [], ['p', 'p', 'p'], ['q', 'q']]
मानचित्र और mul के साथ
इस दृष्टिकोण में हम ऊपर ज़िप विधि के स्थान पर ऑपरेटर मॉड्यूल से mul विधि का उपयोग करते हैं। साथ ही नक्शा फ़ंक्शन सूची में प्रत्येक तत्व के लिए mul विधि लागू करता है इसलिए लूप के लिए आवश्यक नहीं है।
उदाहरण
from operator import mul listA = ['m', 'n', 'p','q'] # Count of elements elem_count = [1,0,3,2] # Given Lists print("Given List of elements: " ,listA) print("Count of elements : ",elem_count) # Creating Matrix res = list(map(mul, listA, elem_count)) # Result print("The new matrix is : " ,res)
आउटपुट
उपरोक्त कोड को चलाने से हमें निम्नलिखित परिणाम मिलते हैं -
Given List of elements: ['m', 'n', 'p', 'q'] Count of elements : [1, 0, 3, 2] The new matrix is : ['m', '', 'ppp', 'qq']