Metoda Python String index().
Python Indeks niza() Metoda omogoča uporabniku, da najde indeks prve pojavitve obstoječega podniza znotraj danega niza v Python .
Sintaksa metode Python String Index().
Sintaksa: string_obj.index(podniz, začetek, konec)
Parametri:
- podniz: Niz, ki ga je treba iskati.
- začetek (privzeto: 0): Ta funkcija določa položaj, od koder je treba začeti iskanje.
- konec (privzeto: dolžina niza): Ta funkcija določa položaj, od koder se mora iskanje končati.
Vrnitev: Vrne prvi položaj najdenega podniza.
Izjema: Povzroči ValueError, če niza argumenta ni mogoče najti ali je indeks izven obsega.
Primer metode Python String Index().
Tukaj je prvi znak 'in' v naključnem nizu 'a', indeks 'a' pa je 1, tako da je izhod tudi 1.
Python3
string> => 'random'> print> (> 'index of 'and' in string:'> , string.index(> 'and'> ))> |
Izhod
Index of ' and ' in string: 1
Metoda Python String Index() za iskanje indeksa enega znaka
Osnovna uporaba metode Python string index() je položaj indeksa določenega znaka ali pa je to lahko beseda. Torej vedno, ko moramo najti indeks določenega znaka, uporabimo indeksna metoda da ga dobim.
Python3
# initializing target string> ch> => 'geeksforgeeks'> > # initializing argument string> ch1> => 'geeks'> > # using index() to find position of 'geeks'> # starting from 2nd index> # prints 8> pos> => ch.index(ch1,> 2> )> > print> (> 'The first position of geeks after 2nd index : '> ,end> => '')> print> (pos)> |
Izhod
The first position of geeks after 2nd index : 8
Opomba: Metoda index() je podobna najti() . Edina razlika je, da find() vrne -1, če iskani niz ni najden, in index() v tem primeru vrže izjemo.
Python String Index() z začetnimi in končnimi argumenti
The index()> metoda v Pythonu se uporablja za iskanje indeksa prve pojavitve podniza znotraj niza. Vrne indeks podniza, če je najden, in dvigne a ValueError> če podniz ni prisoten.
Python3
test_string> => '1234gfg4321'> # finding gfg in string segment 'gfg4'> print> (test_string.index(> 'gfg'> ,> 4> ,> 8> ))> > # finding '21' in string segment 'gfg4321'> print> (test_string.index(> '21'> ,> 8> ,> len> (test_string)))> > # finding '32' in string segment 'fg432' using negative index> print> (test_string.index(> '32'> ,> 5> ,> -> 1> ))> |
Izhod
4 9 8
Metoda Python String Index() z uporabo seznamskega razumevanja
The index()> metoda v Pythonu se uporablja za iskanje indeksa prve pojavitve podniza znotraj niza. Ta primer uporablja razumevanje seznama za iskanje indeksov več podnizov v nizu.
Python3
text> => 'Hello Geeks and welcome to Geeksforgeeks'> substring_list> => [> 'Geeks'> ,> 'welcome'> ,> 'notfound'> ]> > indices> => [text.index(sub)> if> sub> in> text> else> -> 1> for> sub> in> substring_list]> print> (indices)> |
Izhod
[6, 16, -1]
Metoda Python String Index() z uporabo Tuple
The index()> metoda v Pythonu se uporablja za iskanje indeksa prve pojavitve podniza znotraj niza. Metodo index() lahko uporabite s tuplem za iskanje indeksa prve pojavitve katerega koli podniza iz tuple znotraj danega niza.
Python3
text> => 'Hello Geeks! and welcome to Geeksforgeeks'> substring_tuple> => (> 'Geeks'> ,> 'to'> ,> '!'> ,> 'notfound'> )> > for> sub> in> substring_tuple:> > try> :> > index> => text.index(sub)> > print> (f> 'Index of '{sub}': {index}'> )> > except> ValueError as e:> > print> (f> 'Substring '{sub}' not found!'> )> |
Izhod
Index of 'Geeks': 6 Index of 'to': 25 Index of '!': 11 Substring 'notfound' not found!
Izjema pri uporabi metode Python String index().
Včasih dobimo nekaj izjem, ki povzročijo kakšno napako, v primeru indeksa() pa imamo tukaj napako, imenovano tudi Napaka vrednosti.
ValueError: Ta napaka se sproži v primeru, ko niz argumenta ni najden v ciljnem nizu.
Python
# initializing target string> ch> => 'geeksforgeeks'> > # initializing argument string> ch1> => 'gfg'> > # using index() to find position of 'gfg'> # raises error> pos> => ch.index(ch1)> > print> (> 'The first position of gfg is : '> ,end> => '')> print> (pos)> |
Izhod
Traceback (most recent call last): File '/home/aa5904420c1c3aa072ede56ead7e26ab.py', line 12, in pos = ch.index(ch1) ValueError: substring not found
Praktična uporaba
Python Funkcija metode String index() se uporablja za ekstrahiranje dolžina pripone ali predpone za ali pred ciljno besedo . Spodnji primer prikazuje skupno bitno dolžino ukaza, ki prihaja iz izmenične napetosti, dane informacije v a vrvica .
Python
# initializing target strings> VOLTAGES> => [> '001101 AC'> ,> '0011100 DC'> ,> '0011100 AC'> ,> '001 DC'> ]> > # initializing argument string> TYPE> => 'AC'> > # initializing bit-length calculator> SUM_BITS> => 0> > for> i> in> VOLTAGES:> > > ch> => i> > > if> ch[> len> (ch)> -> 2> ] !> => 'D'> :> > # extracts the length of bits in string> > bit_len> => ch.index(> TYPE> )> -> 1> > > # adds to total> > SUM_BITS> => SUM_BITS> +> bit_len> > print> (> 'The total bit length of AC is : '> , SUM_BITS)> |
Izhod
The total bit length of AC is : 13