Python String index() und seine Anwendungen
Das Finden der Zeichenfolge (Teilzeichenfolge) in einer Zeichenfolge ist eine Anwendung, die im täglichen Leben viele Verwendungszwecke hat. Python bietet dies mithilfe eines Funktionsindex() an, der die Position des ersten Auftretens von Teilzeichenfolgen in einer Zeichenfolge zurückgibt.
Syntax: ch.index (ch1, begp, endp)
Parameter:
ch1: Die Zeichenfolge, nach der gesucht werden soll.
begp (Standard: 0): Diese Funktion gibt die Position an, von der aus die Suche gestartet werden muss.
endp (Standard: string_len): Diese Funktion gibt die Position an, an der die Suche enden muss.Rückgabewert: Gibt die erste Position des gefundenen Teilstrings zurück.
Ausnahme: Löst ValueError aus, wenn keine Argumentzeichenfolge gefunden wird.
ch
=
"geeksforgeeks"
ch1
=
"geeks"
pos
=
ch.index(ch1,
2
)
(
"The first position of geeks after 2nd index : "
,end
=
"")
(pos)
Ausgabe :
Die erste Position der Geeks nach dem 2. Index: 8
Hinweis: Die index() -Methode ähnelt find() . Der einzige Unterschied besteht darin, dass find() -1 zurückgibt, wenn die gesuchte Zeichenfolge nicht gefunden wird und index() in diesem Fall eine Ausnahme auslöst.
ValueError: Dieser Fehler wird ausgelöst, wenn die Argumentzeichenfolge nicht in der Zielzeichenfolge gefunden wird.
ch
=
"geeksforgeeks"
ch1
=
"gfg"
pos
=
ch.index(ch1)
(
"The first position of gfg is : "
,end
=
"")
(pos)
Laufzeit Fehler :
Traceback (letzter Anruf zuletzt): Datei "/home/aa5904420c1c3aa072ede56ead7e26ab.py", Zeile 12, in pos = ch.index (ch1) ValueError: Teilzeichenfolge nicht gefunden
Praktische Anwendung: Mit dieser Funktion wird das Suffix oder die Präfixlänge nach oder vor dem Zielwort extrahiert . Das folgende Beispiel zeigt die Gesamtbitlänge des Befehls, der von der Wechselspannung stammt, wenn die Informationen in einer Zeichenfolge angegeben sind.
voltages
=
[
"001101 AC"
,
"0011100 DC"
,
"0011100 AC"
,
"001 DC"
]
type
=
"AC"
sum_bits
=
0
for
i
in
voltages :
ch
=
i
if
(ch[
len
(ch)
-
2
]!
=
'D'
):
bit_len
=
ch.index(
type
)
-
1
sum_bits
=
sum_bits
+
bit_len
(
"The total bit length of AC is : "
,end
=
"")
(sum_bits)
Ausgabe :
Die Gesamtbitlänge von AC beträgt: 13