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

पायथन में बाइनरी तत्व सूची समूहन

मान लीजिए हमारे पास सूचियों की एक सूची है जिसमें प्रत्येक उपसूची में दो तत्व हैं। सूची की कई अन्य उपसूचियों में प्रत्येक उपसूची का एक तत्व सामान्य है। हमें एक अंतिम सूची बनाने की आवश्यकता है जो सामान्य तत्वों द्वारा समूहीकृत उपसूचियों को दिखाएगी।

सेट और मैप के साथ

दी गई सूची में पहला तत्व एक स्ट्रिंग है और दूसरा तत्व एक संख्या है। इसलिए हम एक अस्थायी सूची बनाते हैं जो प्रत्येक उपसूची का दूसरा तत्व रखेगी। फिर हम प्रत्येक उपसूची की तुलना अस्थायी सूची के प्रत्येक तत्व से करते हैं और उन्हें समूहित करने के लिए एक लूप डिज़ाइन करते हैं।

उदाहरण

listA = [['Mon', 2], ['Tue', 3], ['Wed', 3], ["Thu", 1], ['Fri', 2], ['Sat', 3], ['Sun', 1]]
# सेट और मैप के साथ
temp = set(map(lambda i: i[1], listA))
res = [[j[0] for j in listA if j[1] == i] for i in temp]
# परिणाम
print("The list with grouped elements is : \n", res)

आउटपुट

उपरोक्त कोड चलाने पर हमें निम्न परिणाम मिलता है -

The list with grouped elements is : [['Thu', 'Sun'], ['Mon', 'Fri'], ['Tue', 'Wed', 'Sat']]

ग्रुपबाय और आइटमगेटर के साथ

आइटमगेटर फ़ंक्शन का उपयोग प्रत्येक उपसूची का दूसरा तत्व प्राप्त करने के लिए किया जाता है। फिर आइटमगेटर फ़ंक्शन के परिणाम के आधार पर एक ग्रुप बाय फ़ंक्शन लागू किया जाता है।

उदाहरण

from itertools import groupby
from operator import itemgetter
listA = [['Mon', 2], ['Tue', 3], ['Wed', 3], ["Thu", 1], ['Fri', 2], ['Sat', 3], ['Sun', 1]]
# ग्रुपबाय के साथ
listA.sort(key=itemgetter(1))
groups = groupby(listA, itemgetter(1))
res = [[i[0] for i in val] for (key, val) in groups]
# परिणाम
print("The list with grouped elements is : \n", res)

आउटपुट

उपरोक्त कोड चलाने पर हमें निम्न परिणाम मिलता है -

The list with grouped elements is : [['Thu', 'Sun'], ['Mon', 'Fri'], ['Tue', 'Wed', 'Sat']]

डिफॉल्टडिक्ट के साथ

हम डिफॉल्टडिक्ट फ़ंक्शन को लागू करते हैं ताकि उपसूची के दूसरे तत्वों को डिक्शनरी की कुंजी के रूप में प्राप्त किया जा सके। फिर परिणामी सूची में हम उपसूची के पहले तत्व से मान जोड़ते हैं।

उदाहरण

import collections
listA = [['Mon', 2], ['Tue', 3], ['Wed', 3], ["Thu", 1], ['Fri', 2], ['Sat', 3], ['Sun', 1]]
# डिफॉल्टडिक्ट के साथ
res = collections.defaultdict(list)
for val in listA:
    res[val[1]].append(val[0])
# परिणाम
print("The list with grouped elements is : \n", res)

आउटपुट

उपरोक्त कोड चलाने पर हमें निम्न परिणाम मिलता है -

The list with grouped elements is : defaultdict(, {2: ['Mon', 'Fri'], 3: ['Tue', 'Wed', 'Sat'], 1: ['Thu', 'Sun']})
  1. - Python में पूर्णांकों की सूची के प्रत्येक तत्व में K जोड़ें

    डेटा विश्लेषण में, कभी-कभी किसी नए परिदृश्य के परिणाम का आकलन करने के लिए Python सूची में प्रत्येक तत्व में कुछ मान जोड़ना आवश्यक हो जाता है। यह विभिन्न मानों के साथ डेटा सेट के व्यवहार पर कई परिदृश्यों का परीक्षण करने में मदद करता है इसलिए उन परिदृश्यों को संभाल सकने वाले मॉडल या एल्गोरिदम बनाएं। इ

  1. - पायथन में बाइनरी लिस्ट को इंटीजर में बदलना

    हम पायथन में विभिन्न दृष्टिकोणों का उपयोग करके 0 और 1 की सूची (जो एक बाइनरी संख्या दर्शाती है) को दशमलव संख्या में बदल सकते हैं। नीचे दिए गए उदाहरणों में हम int() मेथड के साथ-साथ बिटवाइज़ लेफ्ट शिफ्ट ऑपरेटर का उपयोग करते हैं।int() का उपयोग करकेint() मेथड दो आर्गुमेंट लेता है और नीचे दिए गए सिंटैक्स

  1. - पायथन प्रोग्राम: बाइनरी सर्च एल्गोरिदम

    इस लेख में, हम दी गई समस्या के समाधान और दृष्टिकोण के बारे में जानेंगे।समस्या कथन - हमें एक सॉर्ट की गई सूची दी जाएगी और हमें बाइनरी सर्च की मदद से एक तत्व ढूंढना होगा।एल्गोरिदमx की तुलना मध्य तत्व से करें।यदि x मध्य तत्व से मेल खाता है, तो हम मध्य इंडेक्स वापस करते हैं।अन्यथा यदि x मध्य तत्व से बड़