collections में कुछ कंटेनर डेटाटाइप्स हैं, जो पायथन के जनरल पर्पस बिल्ट-इन कंटेनर्स जैसे dict, list, set आदि के विकल्प हैं।
कुछ कंटेनर्स हैं:
| Sr.No. | कंटेनर और विवरण |
|---|---|
| 1 | namedtuple() नेम्ड फील्ड के साथ टपल सबक्लास बनाने के लिए उपयोग किया जाता है |
| 2 | deque लिस्ट टाइप डेटा का उपयोग करके क्यू |
| 3 | Counter हैश-टेबल ऑब्जेक्ट्स गिनने के लिए dict का सबक्लास |
| 4 | ChainMap एकाधिक मैपिंग्स का सिंगल व्यू बनाने के लिए उपयोग किया जाता है |
| 5 | OrderedDict dict का सबक्लास, जहां डेटा क्रमबद्ध तरीके से जोड़े जाते हैं |
| 6 | UserList आसान एक्सेस के लिए लिस्ट का वॉपर। |
इस मॉड्यूल का उपयोग करने के लिए, हमें इसे आयात करना चाहिए।
import collections
Deque ऑब्जेक्ट
Deque मूल रूप से स्टैक और क्यू स्ट्रक्चर का एक सामान्यीकरण है, जहां इसे बाएं से दाएं इनिशियलाइज़ किया जाता है। यह एक deque बनाने के लिए लिस्ट ऑब्जेक्ट का उपयोग करता है।
कुछ Deque संबंधित मेथड्स हैं:
| Sr.No. | मेथड्स और विवरण |
|---|---|
| 1 | append(x) दाएं तरफ deque में एलिमेंट x जोड़ें |
| 2 | appendleft(x) बाएं तरफ deque में एलिमेंट x जोड़ें |
| 3 | clear() deque को क्लियर करें |
| 4 | count(x) deque में x की घटनाओं की संख्या गिनें |
| 5 | index(x[, start[,stop]]) x की पोजीशन लौटाएं। यदि स्टार्ट और स्टॉप परिभाषित हैं, तो यह उस रेंज में खोजेगा |
| 6 | insert(i, x) पोजीशन i पर deque में x डालें |
| 7 | pop() दाएं तरफ से एलिमेंट हटाएं और लौटाएं |
| 8 | popleft() बाएं तरफ से एलिमेंट हटाएं और लौटाएं |
| 9 | reverse() deque की सामग्री को उलटें |
| 10 | rotate(n = 1) deque को दाएं n बार घुमाएं |
उदाहरण कोड
import collections as col
my_deque = col.deque('124dfre')
print(my_deque)
print("Popped Item: " + str(my_deque.pop()))
print("Popped Item From Left: " + str(my_deque.popleft()))
print(my_deque)
आउटपुट
deque(['1', '2', '4', 'd', 'f', 'r', 'e']) Popped Item: e Popped Item From Left: 1 deque(['2', '4', 'd', 'f', 'r'])
Counter ऑब्जेक्ट
काउंटर एक dict टाइप ऑब्जेक्ट का सबक्लास है। इसका उपयोग कुंजी मानों को गिनने के लिए किया जा सकता है। काउंटर्स केवल इंटीजर वैल्यू की अनुमति देते हैं।
कुछ काउंटर्स संबंधित मेथड्स हैं:
| Sr.No. | मेथड्स और विवरण |
|---|---|
| 1 | elements() उन एलिमेंट्स को लौटाएं, जितनी बार काउंटर वैल्यू रखता है। |
| 2 | most_common([n]) यह मेथड काउंटर से सबसे अधिक उपयोग किए जाने वाले n एलिमेंट्स की सूची लौटाता है। यदि n निर्दिष्ट नहीं है, तो यह सभी लौटाएगा। |
| 3 | subtract(iterable or mapping) दो काउंटर ऑब्जेक्ट्स से काउंटर वैल्यू घटाएं, जहां कुंजियां मेल खाती हैं। |
| 4 | update(iterable or mapping) यह मानों को बिना रिप्लेस किए जोड़ता है, जहां कुंजियां मेल खाती हैं। |
उदाहरण कोड
import collections as col
text_list = ['ABC','PQR','ABC','ABC','PQR','Mno','xyz','PQR','ABC','xyz']
my_counter = col.Counter()
for element in text_list:
my_counter[element] += 1
print(my_counter)
print(my_counter.most_common(2))
आउटपुट
Counter({'ABC': 4, 'PQR': 3, 'xyz': 2, 'Mno': 1})
[('ABC', 4), ('PQR', 3)]
ChainMap ऑब्जेक्ट
ChainMap का उपयोग डिक्शनरीज को एक इकाई में एनकैप्सुलेट करने के लिए किया जाता है।
कुछ ChainMap मेंबर्स हैं:
| Sr.No. | मेथड्स और विवरण |
|---|---|
| 1 | maps यह कुंजियों को उनके संबंधित मानों के साथ लौटाने के लिए उपयोग किया जाता है। |
| 2 | new_child(m = None) यह मेथड चेन के पहले पोजीशन पर एक नई डिक्शनरी डालने के लिए उपयोग किया जाता है। |
उदाहरण कोड
import collections as col
con_code1 = {'India' : 'IN', 'China' : 'CN'}
con_code2 = {'France' : 'FR', 'United Kingdom' : 'GB'}
code = {'Japan' : 'JP'}
chain = col.ChainMap(con_code1, con_code2)
print("Initial Chain: " + str(chain.maps))
chain = chain.new_child(code) # नया चाइल्ड डालें
print("Final Chain: " + str(chain.maps))
आउटपुट
Initial Chain: [{'India': 'IN', 'China': 'CN'}, {'France': 'FR', 'United Kingdom': 'GB'}]
Final Chain: [{'Japan': 'JP'}, {'India': 'IN', 'China': 'CN'}, {'France': 'FR', 'United Kingdom': 'GB'}]