कैसे Arrays और सूचियाँ Python में काम करती हैं

कैसे Arrays और सूचियाँ Python में काम करती हैं

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





आवश्यक शर्तें

इन अवधारणाओं को सीखने के लिए आपको पहले से बहुत कुछ जानने की जरूरत नहीं है। प्रोग्रामिंग प्रतिमानों और पायथन का एक बुनियादी ज्ञान मददगार होगा, लेकिन इसकी आवश्यकता नहीं है। हमारा पढ़ें मूल पायथन उदाहरण अगर आप नहीं जानते कि कहां से शुरू करें। अगर आपको लगता है कि पायथन एक बेकार भाषा है, तो हमारे कारणों की जाँच करें कि ऐसा क्यों नहीं है।





जबकि निम्नलिखित मौलिक विचारों को किसी भी भाषा में लागू किया जा सकता है, मैं पायथन में उदाहरणों का प्रदर्शन करूँगा। यह सीखने में आसान भाषा है और यह समझने के लिए एक उत्कृष्ट मंच प्रदान करती है कि क्या हो रहा है। के अतिरिक्त, ट्यूटोरियल पॉइंट.कॉम एक उत्कृष्ट ऑनलाइन पायथन दुभाषिया प्रदान करता है - यदि आप नहीं चाहते हैं तो आपको पायथन स्थापित करने की भी आवश्यकता नहीं है (यदि आप करते हैं, तो आभासी वातावरण के लिए हमारी मार्गदर्शिका देखें)।





डेटा संरचनाएं

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

आपने कुछ के बारे में सुना होगा रैखिक डेटा प्रकार (तत्व अनुक्रमिक हैं):



  • सरणी
  • आव्यूह
  • खोज तालिका

इसी तरह, सूचियों वे कैसे काम करते हैं, इसे विनियमित करने के लिए अक्सर नियम और तरीके होते हैं। कुछ सामान्य सूचियाँ हैं:

  • लिंक्ड सूची
  • डबल लिंक्ड लिस्ट
  • सरणी सूची या गतिशील सरणी

विभिन्न डेटा संरचनाओं की अधिकता है। आपने के बारे में सुना होगा द्विआधारी पेड़ , रेखांकन , या हैश . मैं आज बुनियादी बातों पर चर्चा करूंगा, लेकिन जब आप सहज हों तो आप और अधिक सीखना चाहेंगे।





सरणी

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

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





from array import array
numbers = array('i', [2, 4, 6, 8])
print(numbers[0])

पहली पंक्ति आयात करती है सरणी मॉड्यूल - जो सरणियों के साथ काम करने के लिए आवश्यक है। दूसरी पंक्ति एक नई सरणी बनाती है जिसे कहा जाता है नंबर और इसे 2, 4, 6, और 8 के मानों के साथ प्रारंभ करता है। प्रत्येक तत्व को एक असाइन किया जाता है पूर्णांक मान कहा जाता है a चाभी या अनुक्रमणिका . कुंजियाँ शुरू होती हैं शून्य , इसलिए संख्या [0] पहले तत्व तक पहुंचेंगे ( 2 ):

आप सोच रहे होंगे कि क्या 'मैं' के लिए प्रयोग किया जाता है। यह है एक टाइपकोड जो पायथन को बताता है कि सरणी पूर्णांकों को संग्रहित करेगी। इस तरह की चीज़ की सामान्य रूप से पायथन में आवश्यकता नहीं होगी (इसे 'अनपाइथोनिक' माना जाएगा)। इतना सरल होने का कारण। आपके ऑपरेटिंग सिस्टम के अंतर्निहित C सरणियों पर Python में Arrays एक बहुत ही पतला आवरण है। इसका मतलब है कि वे तेज़ और स्थिर हैं, लेकिन वे हमेशा पायथन सिंटैक्स का पालन नहीं कर सकते हैं।

गेमिंग के लिए पीसी का अनुकूलन कैसे करें

आप इन सरणियों में मिश्रित प्रकारों को संग्रहीत नहीं कर सकते। मान लें कि आप 'makeuseof.com' स्ट्रिंग को स्टोर करना चाहते हैं:

numbers = array('i', [2, 4, 6, 'makeuseof.com'])

इसकी अनुमति नहीं दी जाएगी और एक अपवाद फेंक देगा:

यहां बताया गया है कि आप सभी तत्वों को कैसे प्रिंट कर सकते हैं:

print(numbers)

सरणी तत्वों तक पहुँचने की यह विधि अच्छी तरह से काम करती है, और यह सही कार्य के लिए एकदम सही है। जो इसके लिए अच्छा नहीं है वह संपूर्ण सरणी तक पहुंच रहा है। प्रोग्रामर स्वाभाविक रूप से आलसी होते हैं, इसलिए मैं खुशी से अधिक, बेहतर कोड लिखूंगा, अगर इसका मतलब है कि मैं रखरखाव को आसान बना सकता हूं, और कॉपी और पेस्ट प्रयास को कम कर सकता हूं।

प्रत्येक प्रोग्रामिंग भाषा किसी न किसी प्रकार के लूप को लागू करेगी, जो सूची तत्वों पर पुनरावृति (लूपिंग) के लिए एकदम सही है। सबसे आम लूप हैं जबकि तथा के लिये . पायथन a . प्रदान करके चीजों को और भी आसान बनाता है में लिए कुंडली:

for number in numbers:
print(number)

ध्यान दें कि आपको तत्वों को उनकी कुंजी से कैसे एक्सेस नहीं करना है। यह एक सरणी के साथ काम करने का एक बेहतर तरीका है। एक सूची पर पुनरावृति करने का एक वैकल्पिक तरीका है a के लिये कुंडली:

for i in range(len(numbers)):
print(numbers[i])

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

सूचियों

अब जब आप जानते हैं कि सरणियाँ कैसे काम करती हैं, तो आइए एक सूची देखें। यह कभी-कभी भ्रमित करने वाला हो सकता है, क्योंकि लोग अलग-अलग शब्दावली का परस्पर उपयोग करते हैं, और सूचियाँ हैं सरणियों ... तरह।

एक सूची एक विशेष प्रकार की सरणी है। सबसे बड़ा अंतर यह है कि सूचियों में शामिल हो सकते हैं मिला हुआ प्रकार (याद रखें, सरणियों में एक ही प्रकार के तत्व होने चाहिए)। पायथन में सूचियाँ बहुत आसान हैं:

दुस्साहस के साथ संगीत कैसे रिकॉर्ड करें
cars = ['Ford', 'Austin', 'Lancia']

ध्यान दें कि आपको कैसे आयात करने की आवश्यकता नहीं है सरणी मापांक?

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

print(cars)

सरणी की तरह ही, आप लूप का उपयोग करके सूची तत्वों को पुन: सक्रिय कर सकते हैं:

for car in cars:
print(car)

सूचियों की असली पार्टी चाल उनका मिश्रित प्रकार है। आगे बढ़ें और कुछ अतिरिक्त डेटा जोड़ें:

cars = ['Ford', 'Austin', 'Lancia', 1, 0.56]

यह पायथन के लिए कोई समस्या नहीं है - इसने कोई अपवाद भी नहीं उठाया:

सूची में नए तत्व जोड़ना आसान है (सरणी के साथ कुछ संभव नहीं है):

cars = ['Ford', 'Austin']
print(cars)
cars.append('Lancia')
print(cars)

आप दो सूचियों को एक में मर्ज भी कर सकते हैं:

cars = ['Ford', 'Austin']
print(cars)
other_cars = ['Lotus', 'Lancia']
cars.extend(other_cars)
print(cars)

का उपयोग करके तत्वों को निकालना उतना ही आसान है हटाना वाक्य - विन्यास:

cars = ['Ford', 'Austin', 'Lotus', 'Lancia']
print(cars)
cars.remove('Ford')
print(cars)

यह पायथन में सूचियों और सरणियों की मूल बातें शामिल करता है। एक कोडिंग प्रोजेक्ट पर विचार क्यों न करें, जैसे कि Google शीट्स को पढ़ना और लिखना, json डेटा पढ़ना। हो सकता है कि आप कुछ बनाने के लिए अपने नए कौशल का उपयोग कर सकें कस्टम शॉर्टकट बटन . एक अलग प्रोग्रामिंग भाषा होने के बावजूद, ये सरणी सिद्धांत अभी भी लागू होते हैं।

साझा करना साझा करना कलरव ईमेल अपने वर्चुअलबॉक्स लिनक्स मशीनों को सुपरचार्ज करने के लिए 5 टिप्स

वर्चुअल मशीनों द्वारा पेश किए गए खराब प्रदर्शन से थक गए हैं? अपने वर्चुअलबॉक्स प्रदर्शन को बढ़ावा देने के लिए आपको यहां क्या करना चाहिए।

आगे पढ़िए
संबंधित विषय
  • प्रोग्रामिंग
  • प्रोग्रामिंग
  • अजगर
लेखक के बारे में जो कोबर्न(136 लेख प्रकाशित)

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

जो कोबर्न . की अन्य फ़िल्में-टीवी शो

हमारे न्यूज़लेटर की सदस्यता लें

तकनीकी युक्तियों, समीक्षाओं, निःशुल्क ई-पुस्तकों और अनन्य सौदों के लिए हमारे न्यूज़लेटर से जुड़ें!

सब्सक्राइब करने के लिए यहां क्लिक करें