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

पायथन में दी गई सूची को स्ट्रिंग आकार के अनुसार वर्गीकृत करना

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

फॉर लूप के साथ

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

उदाहरण

listA = ['Monday', 'Thursday', 'Friday', 'Saturday', 'Sunday']
# दी गई सूची
print("Given list : \n", listA)
# स्ट्रिंग आकार के अनुसार वर्गीकृत करें
len_comp = lambda x, y: len(x) == len(y)
res = []
for sub_list in listA:
    ele = next((i for i in res if len_comp(sub_list, i[0])), [])
    if ele == []:
        res.append(ele)
    ele.append(sub_list)
# परिणाम
print("The list after creating categories : \n", res)

आउटपुट

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

Given list : ['Monday', 'Thursday', 'Friday', 'Saturday', 'Sunday']
The list after creating categories : [['Monday', 'Friday', 'Sunday'], ['Thursday', 'Saturday']]

सॉर्ट और ग्रुपबाय के साथ

इस दृष्टिकोण में हम पहले सभी तत्वों को उनकी लंबाई के अनुसार सॉर्ट करते हैं और फिर इटरटूल्स मॉड्यूल के हिस्से ग्रुपबाय फ़ंक्शन को लागू करते हैं।

उदाहरण

from itertools import groupby
listA = ['Monday', 'Thursday', 'Friday', 'Saturday', 'Sunday']
# दी गई सूची
print("Given list : \n", listA)
# स्ट्रिंग आकार के अनुसार वर्गीकृत करें
get_len = lambda x: len(x)
sub_list = sorted(listA, key=get_len)
res = [list(ele) for i, ele in groupby(sub_list, get_len)]
# परिणाम
print("The list after creating categories : \n", res)

आउटपुट

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

Given list : ['Monday', 'Thursday', 'Friday', 'Saturday', 'Sunday']
The list after creating categories : [['Monday', 'Friday', 'Sunday'], ['Thursday', 'Saturday']]
  1. पायथन प्रोग्राम: जांचें कि दी गई स्ट्रिंग वॉयल पालिंड्रोम है या नहीं पायथन प्रोग्राम: जांचें कि दी गई स्ट्रिंग वॉयल पालिंड्रोम है या नहीं

    इस लेख में हम दी गई समस्या के समाधान के बारे में जानेंगे। समस्या कथन हमें एक स्ट्रिंग दी गई है (जिसमें स्वर और व्यंजन दोनों अक्षर हैं), सभी व्यंजनों को हटाएं, फिर जांचें कि परिणामी स्ट्रिंग पालिंड्रोम है या नहीं। यहां हम पहले स्ट्रिंग में मौजूद सभी व्यंजनों को हटाते हैं। एक लूप से विभाजकों की गणना क

  1. पायथन प्रोग्राम: जांचें कि दी गई स्ट्रिंग पैंग्राम है या नहीं पायथन प्रोग्राम: जांचें कि दी गई स्ट्रिंग पैंग्राम है या नहीं

    इस लेख में, हम दिए गए प्रॉब्लम स्टेटमेंट को हल करने के समाधान और दृष्टिकोण के बारे में सीखेंगे। प्रॉब्लम स्टेटमेंट एक स्ट्रिंग इनपुट दिए जाने पर, हमें यह जांचने के लिए एक पायथन प्रोग्राम जनरेट करना होगा कि वह स्ट्रिंग पैंग्राम है या नहीं। एक पैंग्राम एक वाक्य/शब्दों की श्रृंखला है जिसमें अंग्रेजी

  1. - पायथन में स्ट्रिंग का आकार कैसे प्राप्त करें?

    पायथन में len() नामक एक मेथड होता है जो हमें किसी भी कंपोजिट ऑब्जेक्ट की लंबाई देता है। स्ट्रिंग की लंबाई प्राप्त करने के लिए, बस स्ट्रिंग को len() कॉल में पास करें। उदाहरण print(len(Hello World!)) आउटपुट 12 यदि आप स्ट्रिंग का आकार बाइट्स में चाहते हैं, तो आप sys मॉड्यूल से getsizeof() मेथड का उपयोग