पाइथन में संग्रह: पाइथन कलेक्शन के बारे में आपको जो कुछ भी जानना चाहिए



यह ब्लॉग सभी विशेष संग्रह डेटा संरचनाओं के साथ संग्रह मॉड्यूल के साथ अजगर में अंतर्निहित संग्रह डेटा प्रकारों को कवर करेगा।

पायथन प्रोग्रामिंग भाषा में चार संग्रह डेटा प्रकार हैं- सूची , टपल, सेट तथा । परंतु एक अंतर्निहित मॉड्यूल के साथ संग्रह के रूप में जाना जाता है जिसमें विशेष डेटा संरचनाएं होती हैं जो मूल रूप से चार डेटा प्रकारों की कमियों को कवर करती हैं। इस ब्लॉग में, हम उन विशिष्ट डेटा संरचनाओं में से प्रत्येक के माध्यम से विस्तार से जाएंगे। इस ब्लॉग में निम्नलिखित विषय दिए गए हैं:

पायथन में संग्रह क्या हैं?

अजगर में संग्रह मूल रूप से कंटेनर डेटा प्रकार हैं, अर्थात् सूची, सेट, टुपल्स, शब्दकोश। उनके पास घोषणा और उपयोग के आधार पर अलग-अलग विशेषताएं हैं।





  • वर्ग कोष्ठक में एक सूची घोषित की गई है, यह परिवर्तनशील है, डुप्लिकेट मानों को संग्रहीत करता है और तत्वों को अनुक्रमित करके उपयोग किया जा सकता है।

    संदर्भ c ++ द्वारा कॉल करें
  • एक टपल का आदेश दिया गया है और प्रकृति में अपरिवर्तनीय है, हालांकि डुप्लिकेट प्रविष्टियाँ एक टुपल के अंदर हो सकती हैं।



  • वर्ग कोष्ठक में एक सेट अनियंत्रित और घोषित किया गया है। यह अनुक्रमित नहीं है और इसमें डुप्लिकेट प्रविष्टियाँ भी नहीं हैं।

  • एक शब्दकोष में मुख्य मूल्य जोड़े होते हैं और प्रकृति में परिवर्तनशील होते हैं। शब्दकोश घोषित करने के लिए हम चौकोर कोष्ठकों का उपयोग करते हैं।

ये अजगर के सामान्य उद्देश्य में निर्मित कंटेनर डेटा प्रकार हैं। लेकिन जैसा कि हम सभी जानते हैं कि अजगर के पास हमेशा कुछ न कुछ अतिरिक्त होता है। यह संग्रह नाम के एक अजगर मॉड्यूल के साथ आता है जिसमें डेटा संरचनाएं होती हैं।



विशिष्ट संग्रह डेटा संरचनाएँ

संग्रह अजगर में मॉड्यूल विशेष डेटा संरचना को लागू करता है जो अजगर के निर्मित कंटेनर डेटा प्रकारों के लिए विकल्प प्रदान करता है। संग्रह मॉड्यूल में विशेष डेटा संरचनाएं निम्नलिखित हैं।

  1. नामांकित व्यक्ति ()
  2. तथा
  3. चैनमैप
  4. काउंटर
  5. आदेश दिया गया
  6. चूक
  7. उपयोगकर्ता निर्णय
  8. उपयोगकर्ता सूची
  9. उपयोगकर्ता

नामांकित व्यक्ति ()

यह एक नामित प्रविष्टि के साथ एक टपल लौटाता है, जिसका अर्थ है कि टुपल में प्रत्येक मान को सौंपा गया एक नाम होगा। यह सूचकांक मूल्यों का उपयोग करते हुए तत्वों तक पहुंचने की समस्या को खत्म करता है। नेमटुपल () के साथ इन मूल्यों तक पहुंचना आसान हो जाता है, क्योंकि आपको विशिष्ट तत्वों को प्राप्त करने के लिए सूचकांक मूल्यों को याद रखने की आवश्यकता नहीं है।

यह काम किस प्रकार करता है?

सबसे पहले, आपको संग्रह मॉड्यूल आयात करना होगा, इसे स्थापना की आवश्यकता नहीं है।

संग्रह नामांकित से आयात करें

निम्नलिखित कोड को देखें यह समझने के लिए कि आप नामांकित का उपयोग कैसे कर सकते हैं।

a = नामांकित ('पाठ्यक्रम', 'नाम, तकनीक') s = a ('डेटा विज्ञान', 'अजगर') प्रिंट (s) # ये आउटपुट पाठ्यक्रम (नाम = 'पायथन', तकनीक = 'पायथन') होंगे

कैसे एक सूची का उपयोग कर एक नामचर्चा बनाने के लिए?

s._make (['डेटा साइंस', 'अजगर']) # ये आउटपुट पहले जैसा ही होगा।

तथा

’डेक’ के रूप में उच्चारित उच्चारण आसानी से प्रविष्टि और विलोपन करने के लिए एक अनुकूलित सूची है।

यह काम किस प्रकार करता है?

# संग्रह से एक deque का आयात करना deque a = ['d', 'u', 'r', 'e', ​​'k'] a1 = deque (a) प्रिंट (a1) #the आउटपुट deque ('') होगा d ',' u ',' r ',' e ',' k '])

अब हम इस बात पर ध्यान देते हैं कि हम किस प्रकार से वस्तुओं को डालेंगे और हटाएंगे।

a1.append ('a') प्रिंट (a1) # आउटपुट deque होगा (['d', 'u', 'r', 'e', ​​'k', 'a']) a1.appendleft (') e ') प्रिंट (a1) # आउटपुट deque होगा ([' e ',' d ',' u ',' r ',' e ',' k ',' a ’])

जैसा कि स्पष्ट होना चाहिए, एक घटक को सम्मिलित करना डीक का उपयोग बढ़ाया जाता है, साथ ही आप घटकों को भी हटा सकते हैं।

a1.pop () प्रिंट (a1) # आउटपुट आउटपुट deque (['e', 'd', 'u', 'r', 'e', ​​'k']) a1.popleft () प्रिंट (a1) होगा ) # यह आउटपुट डीके (['डी', 'यू', 'आर', 'ई', 'के'] होगा।

अंतर्निहित डेटा प्रकारों के समान, कई अन्य ऑपरेशन हैं जो हम एक छल पर प्रदर्शन कर सकते हैं। जैसे तत्वों को गिनना या हिरण साफ करना आदि।

कैसे जावा में कार्यक्रम को रोकने के लिए - -

जंजीर

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

यह काम किस प्रकार करता है?

संग्रह से आयात करें ChainMap a = {1: 'edureka', 2: 'python'} b = {3: 'डेटा साइंस', 4: 'मशीन लर्निंग'} c = ChainMap (a, b) प्रिंट (c) #the आउटपुट चैनपाइप होगा [{1: 'edureka', 2: 'python'}, {3: 'डेटा साइंस', 4: 'मशीन लर्निंग'}]

तत्वों को एक्सेस या सम्मिलित करने के लिए हम इंडेक्स के रूप में कुंजियों का उपयोग करते हैं। लेकिन ChainMap में एक नया शब्दकोश जोड़ने के लिए हम निम्नलिखित दृष्टिकोण का उपयोग करते हैं।

a1 = {5: 'AI', 6: 'न्यूरल नेटवर्क'} c1 = c.new_child (a1) प्रिंट (c1) # आउटपुट चैनपाइप होगा [{1: 'edureka', 2: 'python'), { 3: 'डेटा साइंस', 4: 'मशीन लर्निंग'}, {5: 'एआई', 6: 'न्यूरल नेटवर्क'}}

काउंटर

यह एक शब्दकोश उपवर्ग है, जिसका उपयोग हशीली वस्तुओं को गिनने के लिए किया जाता है।

यह काम किस प्रकार करता है?

संग्रह आयात से काउंटर a = [११,१,१,३,३,३,३,३,३,४] c = काउंटर (a) प्रिंट (c) #the आउटपुट काउंटर = ({१) होगा 4, 2: 1, 3: 4, 4: 2})

संचालन के अलावा आप एक शब्दकोश पर प्रदर्शन कर सकते हैं काउंटर में 3 और संचालन हैं जो हम प्रदर्शन कर सकते हैं।

  1. तत्व फ़ंक्शन - यह काउंटर में सभी तत्वों से युक्त एक सूची देता है।
  2. Most_common () - यह काउंटर में प्रत्येक तत्व की गिनती के साथ एक क्रमबद्ध सूची देता है।
  3. घटाना () - यह एक तर्क के रूप में एक चलने योग्य वस्तु लेता है और काउंटर में तत्वों की संख्या को घटाता है।

आदेश दिया गया

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

यह काम किस प्रकार करता है?

संग्रह से आयात आदेश डिडक्ट डिक्ट = ऑर्डरड डिक्ट () ओड [1] = 'ई' ओड [2] = 'डी' ओड [3] = 'यू' ओड [4] = 'आर' ओड [5] = 'ई' ओड [६] = 6 के ’से [=] =’ ए 'प्रिंट (से) # आउटपुट आउटपुट होगा ऑर्डर [१, (ई ’), (२,' डी’), (३, 'यू'), (4, 'आर'), (5, 'ई'), (6, 'के'), (7, 'ए')]

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

चूक

यह एक शब्दकोश उपवर्ग है जो लापता मूल्यों की आपूर्ति करने के लिए एक कारखाना कार्य कहता है। सामान्य तौर पर, यह किसी भी त्रुटि को नहीं फेंकता है जब एक लापता कुंजी मान को एक शब्दकोश में कहा जाता है।

यह काम किस प्रकार करता है?

डिफॉल्ट डिक्टिक्ट डी = डिफॉल्टडिक्ट (int) #we के कलेक्शन से एक टाइप भी बताना होता है। d [1] = 'edureka' d [2] = 'python' प्रिंट (d [3]) #it keyerror के बजाय 0 के रूप में आउटपुट देगा।

उपयोगकर्ता निर्णय

यह वर्ग शब्दकोश वस्तुओं के आसपास एक आवरण के रूप में कार्य करता है। इस वर्ग की आवश्यकता आवश्यकता से सीधे उपवर्ग तक तानाशाही से आई। इस वर्ग के साथ काम करना आसान हो जाता है क्योंकि अंतर्निहित शब्दकोश एक विशेषता बन जाता है।

वर्ग संग्रह। उपयोगकर्ता ([आरंभिक])

यह वर्ग एक शब्दकोश का अनुकरण करता है। उदाहरण की सामग्री को एक नियमित शब्दकोश में रखा जाता है, जिसे कक्षा उपयोगकर्ता के attribute डेटा ’विशेषता के साथ एक्सेस किया जा सकता है। प्रारंभिक डेटा का संदर्भ नहीं रखा गया है, क्योंकि इसका उपयोग अन्य उद्देश्यों के लिए किया जाना है।

हैशमैप और हैशटेबल के बीच अंतर

उपयोगकर्ता सूची

यह वर्ग सूची ऑब्जेक्ट के चारों ओर आवरण की तरह कार्य करता है। यह अन्य सूची जैसे वर्गों के लिए एक उपयोगी आधार वर्ग है जो उनसे विरासत में मिली है और मौजूदा तरीकों को ओवरराइड कर सकती है या यहां तक ​​कि कम नए लोगों को भी जोड़ सकती है।

इस वर्ग की आवश्यकता सूची से सीधे उपवर्ग की आवश्यकता से आई है। इस वर्ग के साथ काम करना आसान हो जाता है क्योंकि अंतर्निहित सूची एक विशेषता बन जाती है।

वर्ग संग्रह। उपयोगकर्ता सूची ([सूची])

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

इस ब्लॉग में, हमने विशेष डेटा संरचनाओं के बारे में सीखा है जो कि अजगर में संग्रह मॉड्यूल के साथ आता है। अनुकूलन बेहतर प्रदर्शन और संवर्धित परिणामों की ओर जाता है। वही हमारे अपने करियर और कौशल पर भी लागू होता है। यदि आप अपनी शिक्षा को किक-स्टार्ट करना चाहते हैं और प्रोग्रामिंग के तरीके को अनुकूलित करना चाहते हैं, तो edureka's में दाखिला लें और अजगर के साथ अंतहीन संभावनाओं को उजागर करें।

कोई प्रश्न है? टिप्पणियों में उनका उल्लेख करें, और हम जल्द से जल्द आपके पास वापस आ जाएंगे।