Python सूची index() उदाहरण के साथ

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

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

सूची में कई विधियाँ उपलब्ध हैं, और उनमें से महत्वपूर्ण है index().

Python सूची अनुक्रमणिका()

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

सूची में अंतर्निहित index() विधि के अलावा, आप इंडेक्स प्राप्त करने के अन्य तरीके भी उपयोग कर सकते हैं, जैसे कि looping लिस्ट कॉम्प्रिहेंशन, एन्यूमरेट() और फिल्टर विधियों का उपयोग करके सूची के माध्यम से।

सूची index() विधि दिए गए तत्व का पहला न्यूनतम सूचकांक लौटाती है।

वाक्य - विन्यास

list.index(element, start, end)

पैरामीटर्स

पैरामीटर्स विवरण
तत्व वह तत्व जिसका सूचकांक आप प्राप्त करना चाहते हैं.
प्रारंभ यह पैरामीटर वैकल्पिक है। आप तत्व की खोज के लिए start: index को परिभाषित कर सकते हैं। यदि नहीं दिया गया है, तो डिफ़ॉल्ट मान 0 है।
समाप्त यह पैरामीटर वैकल्पिक है। आप खोजे जाने वाले तत्व के लिए अंतिम इंडेक्स निर्दिष्ट कर सकते हैं। यदि नहीं दिया गया है, तो इसे सूची के अंत तक माना जाता है।

प्रतिलाभ की मात्रा

सूची index() विधि दिए गए तत्व का सूचकांक लौटाती है। यदि तत्व सूची में मौजूद नहीं है, तो index() विधि एक त्रुटि फेंक देगी, उदाहरण के लिए, ValueError: 'तत्व' सूची में नहीं है।

उदाहरण: दिए गए तत्व का सूचकांक ज्ञात करना।

सूची my_list = ['A', 'B', 'C', 'D', 'E', 'F'] में, हम तत्व C और F के लिए सूचकांक जानना चाहते हैं।

नीचे दिया गया उदाहरण दिखाता है कि सूचकांक कैसे प्राप्त करें।

my_list = ['A', 'B', 'C', 'D', 'E', 'F']
print("The index of element C is ", my_list.index('C'))
print("The index of element F is ", my_list.index('F'))

आउटपुट:

The index of element C is  2
The index of element F is  5

उदाहरण: index() में प्रारंभ और अंत का उपयोग करना

इस उदाहरण में आरंभ और अंत सूचकांक का उपयोग करके सूची में सूचकांक की खोज को सीमित करने का प्रयास किया जाएगा।

my_list = ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J']
print("The index of element C is ", my_list.index('C', 1, 5))
print("The index of element F is ", my_list.index('F', 3, 7))
#using just the startindex
print("The index of element D is ", my_list.index('D', 1))

आउटपुट:

The index of element C is  2
The index of element F is  5
The index of element D is  3

उदाहरण: index() विधि का परीक्षण उस तत्व के साथ करना जो मौजूद नहीं है।

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

my_list = ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J']
print("The index of element C is ", my_list.index('Z'))

आउटपुट:

Traceback (most recent call last):
File "display.py", line 3, in <module>
print("The index of element C is ", my_list.index('Z'))
ValueError: 'Z' is not in list

किसी सूची में किसी तत्व का सूचकांक प्राप्त करने के लिए for-loop का उपयोग करना

हमने देखा कि list.index() विधि के साथ, यह उस तत्व का सूचकांक देता है जिसे तर्क के रूप में पारित किया जाता है।

अब सूची को इस प्रकार मानें: my_list = ['Guru', 'सिया', 'टिया', 'Guru', 'दक्ष', 'रिया', 'GuruनामGuru' इंडेक्स में ' तीन बार मौजूद है, और मुझे ' नाम वाले सभी इंडेक्स चाहिए।Guru'.

फॉर-लूप का उपयोग करके हम कई इंडेक्स प्राप्त करने में सक्षम होंगे, जैसा कि नीचे दिए गए उदाहरण में दिखाया गया है।

my_list = ['Guru', 'Siya', 'Tiya', 'Guru', 'Daksh', 'Riya', 'Guru'] 
all_indexes = [] 
for i in range(0, len(my_list)) : 
    if my_list[i] == 'Guru' : 
        all_indexes.append(i)
print("Originallist ", my_list)
print("Indexes for element Guru : ", all_indexes)

आउटपुट:

Originallist  ['Guru', 'Siya', 'Tiya', 'Guru', 'Daksh', 'Riya', 'Guru']
Indexes for element Guru :  [0, 3, 6]

while-loop और list.index() का उपयोग करना

while-loop का उपयोग करने से दिए गए तत्व के सभी इंडेक्स प्राप्त करने के लिए दी गई सूची के माध्यम से लूप किया जाएगा।

सूची में : my_list = ['Guru', 'सिया', 'टिया', 'Guru', 'दक्ष', 'रिया', 'Guruहमें तत्व ' के सभी सूचकांकों की आवश्यकता हैGuru'.

नीचे एक उदाहरण दिया गया है जो दिखाता है कि while-loop का उपयोग करके सभी इंडेक्स कैसे प्राप्त करें

my_list = ['Guru', 'Siya', 'Tiya', 'Guru', 'Daksh', 'Riya', 'Guru'] 
result = []
elementindex = -1
while True:
    try:
        elementindex = my_list.index('Guru', elementindex+1)
        result.append(elementindex)
    except  ValueError:
        break
print("OriginalList is ", my_list)
print("The index for element Guru is ", result)

आउटपुट:

OriginalList is  ['Guru', 'Siya', 'Tiya', 'Guru', 'Daksh', 'Riya', 'Guru']
The index for element Guru is  [0, 3, 6]

किसी सूची में तत्व का सूचकांक प्राप्त करने के लिए सूची समझ का उपयोग करना

सभी अनुक्रमणिकाओं को प्राप्त करने के लिए, सूची पर सूची समझ का उपयोग करना एक तेज़ और सीधा तरीका है।

सूची समझ हैं Python ऐसे फ़ंक्शन जिनका उपयोग नए अनुक्रम बनाने के लिए किया जाता है (जैसे कि सूचियाँ, शब्दकोश, आदि) यानी, पहले से बनाए गए अनुक्रमों का उपयोग करना।

वे लंबे लूप को कम करने में मदद करते हैं और आपके कोड को पढ़ने और बनाए रखने में आसान बनाते हैं।

निम्न उदाहरण दिखाता है कि यह कैसे किया जाता है:

my_list = ['Guru', 'Siya', 'Tiya', 'Guru', 'Daksh', 'Riya', 'Guru'] 
print("Originallist ", my_list)
all_indexes = [a for a in range(len(my_list)) if my_list[a] == 'Guru']
print("Indexes for element Guru : ", all_indexes)

आउटपुट:

Originallist  ['Guru', 'Siya', 'Tiya', 'Guru', 'Daksh', 'Riya', 'Guru']
Indexes for element Guru :  [0, 3, 6]

सूची में किसी तत्व का सूचकांक प्राप्त करने के लिए Enumerate का उपयोग करना

Enumerate() फ़ंक्शन python के साथ उपलब्ध एक अंतर्निहित फ़ंक्शन है। आप सूची में तत्व के सभी इंडेक्स प्राप्त करने के लिए enumerate का उपयोग कर सकते हैं। यह एक पुनरावृत्त ऑब्जेक्ट (यानी, एक ऑब्जेक्ट जिसे लूप किया जा सकता है) के रूप में इनपुट लेता है, और आउटपुट प्रत्येक आइटम के लिए एक काउंटर के साथ एक ऑब्जेक्ट है।

निम्न उदाहरण दिखाता है कि किसी सूची पर enumerate का उपयोग करके दिए गए तत्व के लिए सभी इंडेक्स कैसे प्राप्त करें।

my_list = ['Guru', 'Siya', 'Tiya', 'Guru', 'Daksh', 'Riya', 'Guru'] 
print("Originallist ", my_list)
print("Indexes for element Guru : ", [i for i, e in enumerate(my_list) if e == 'Guru'])

आउटपुट:

Originallist  ['Guru', 'Siya', 'Tiya', 'Guru', 'Daksh', 'Riya', 'Guru']
Indexes for element Guru :  [0, 3, 6]

सूची में किसी तत्व का सूचकांक प्राप्त करने के लिए फ़िल्टर का उपयोग करना

फ़िल्टर() विधि दिए गए फ़ंक्शन के आधार पर दी गई सूची को फ़िल्टर करती है। सूची के प्रत्येक तत्व को फ़ंक्शन में पास किया जाएगा, और आवश्यक तत्वों को फ़ंक्शन में दी गई शर्त के आधार पर फ़िल्टर किया जाएगा।

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

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

my_list = ['Guru', 'Siya', 'Tiya', 'Guru', 'Daksh', 'Riya', 'Guru'] 
print("Originallist ", my_list)
all_indexes = list(filter(lambda i: my_list[i] == 'Guru', range(len(my_list)))) 
print("Indexes for element Guru : ", all_indexes)

आउटपुट:

Originallist  ['Guru', 'Siya', 'Tiya', 'Guru', 'Daksh', 'Riya', 'Guru']
Indexes for element Guru :  [0, 3, 6]

किसी सूची में किसी तत्व का सूचकांक प्राप्त करने के लिए NumPy का उपयोग करना

NumPy लाइब्रेरी का उपयोग विशेष रूप से arrays के लिए किया जाता है। इसलिए यहाँ हम दिए गए सूची से आवश्यक तत्व का इंडेक्स प्राप्त करने के लिए NumPy का उपयोग करेंगे।

NumPy का उपयोग करने के लिए हमें इसे इंस्टॉल करना होगा और आयात करना होगा।

इसके लिए निम्न चरण दिए गए हैं:

चरण 1) NumPy स्थापित करें

pip install numpy

चरण 2) NumPy मॉड्यूल आयात करें.

import numpy as np

चरण 3) सूची को सारणी में बदलने के लिए np.array का उपयोग करें

my_list = ['Guru', 'Siya', 'Tiya', 'Guru', 'Daksh', 'Riya', 'Guru'] 
np_array = np.array(my_list)

चरण 4) np.where() का उपयोग करके अपने इच्छित तत्व का सूचकांक प्राप्त करें

item_index = np.where(np_array == 'Guru')[0]

आउटपुट सहित अंतिम कार्यशील कोड इस प्रकार है:

import numpy as np
my_list = ['Guru', 'Siya', 'Tiya', 'Guru', 'Daksh', 'Riya', 'Guru'] 
np_array = np.array(my_list)
item_index = np.where(np_array == 'Guru')[0]
print("Originallist ", my_list)
print("Indexes for element Guru :", item_index)

आउटपुट:

Originallist['Guru', 'Siya', 'Tiya', 'Guru', 'Daksh', 'Riya', 'Guru']
Indexes for element Guru : [0 3 6]

किसी सूची में किसी तत्व का सूचकांक प्राप्त करने के लिए more_itertools.locate() का उपयोग करना

more_itertools.locate() सूची में तत्व के इंडेक्स को खोजने में मदद करता है। यह मॉड्यूल python संस्करण 3.5+ के साथ काम करेगा। पैकेज अधिक_itertools इसका उपयोग करने के लिए पहले इसे स्थापित करना होगा।

more_itertools को स्थापित करने और उपयोग करने के लिए निम्नलिखित चरण हैं

स्टेप 1) pip (python पैकेज मैनेजर) का उपयोग करके more_itertools स्थापित करें। कमांड है

pip install more_itertools

चरण 2) एक बार स्थापना हो जाने पर, आयात करें स्थिति जानें मॉड्यूल जैसा कि नीचे दिखाया गया है

from more_itertools import locate

अब आप सूची पर लोकेट मॉड्यूल का उपयोग कर सकते हैं जैसा कि नीचे उदाहरण में दिखाया गया है:

from more_itertools import locate
my_list = ['Guru', 'Siya', 'Tiya', 'Guru', 'Daksh', 'Riya', 'Guru'] 
print("Originallist : ", my_list)
print("Indexes for element Guru :", list(locate(my_list, lambda x: x == 'Guru')))

आउटपुट:

Originallist :  ['Guru', 'Siya', 'Tiya', 'Guru', 'Daksh', 'Riya', 'Guru']
Indexes for element Guru : [0, 3, 6]

सारांश

  • सूची index() विधि आपको दिए गए तत्व का इंडेक्स खोजने में मदद करती है। इंडेक्स प्राप्त करने का यह सबसे आसान और सीधा तरीका है।
  • सूची index() विधि दिए गए तत्व का सूचकांक लौटाती है।
  • यदि तत्व सूची में मौजूद नहीं है, तो index() विधि एक त्रुटि उत्पन्न करेगी, उदाहरण के लिए, ValueError: 'Element' is not in list.
  • अंतर्निहित सूची विधि के अलावा, आप इंडेक्स प्राप्त करने के अन्य तरीकों का भी उपयोग कर सकते हैं, जैसे कि looping सूची के माध्यम से, सूची संप्रेषण का उपयोग करके, गणना करने के लिए (enumerate() का उपयोग करके), फ़िल्टर का उपयोग करके, आदि।
  • किसी दिए गए तत्व के एकाधिक इंडेक्स प्राप्त करने के लिए for-loop और while-loop का उपयोग करना।
  • सभी अनुक्रमणिकाओं को प्राप्त करने के लिए, सूची पर सूची समझ का उपयोग करना एक तेज़ और सीधा तरीका है।
  • सूची समझ हैं Python वे फ़ंक्शन जो नए अनुक्रम बनाने के लिए उपयोग किए जाते हैं.
  • वे लंबे लूप को कम करने में मदद करते हैं और आपके कोड को पढ़ने और बनाए रखने में आसान बनाते हैं।
  • आप सूची में तत्व के सभी अनुक्रमणिकाएँ प्राप्त करने के लिए enumerate का उपयोग कर सकते हैं।
  • Enumerate() फ़ंक्शन python के साथ उपलब्ध एक अंतर्निहित फ़ंक्शन है। यह इनपुट को एक पुनरावृत्त ऑब्जेक्ट (यानी, एक ऑब्जेक्ट जिसे लूप किया जा सकता है) के रूप में लेता है, और आउटपुट प्रत्येक आइटम के लिए एक काउंटर के साथ एक ऑब्जेक्ट होता है।
  • फ़िल्टर() विधि दिए गए फ़ंक्शन के आधार पर दी गई सूची को फ़िल्टर करती है।
  • Numpy लाइब्रेरी का उपयोग विशेष रूप से arrays के लिए किया जाता है। आप सूची में दिए गए तत्व का इंडेक्स प्राप्त करने के लिए NumPy का उपयोग कर सकते हैं।
  • more_itertools.locate() एक और पायथन लाइब्रेरी है जो दी गई सूची के इंडेक्स को खोजने में मदद करती है।

इस पोस्ट को संक्षेप में इस प्रकार लिखें: