Zeichen in einer Zeichenkette in Python suchen

Manav Narula 21 Dezember 2022
  1. Verwenden Sie die Funktion find(), um die Position eines Zeichens in einer Zeichenkette zu ermitteln
  2. Verwenden Sie die Funktion rfind(), um die Position eines Zeichens in einer Zeichenkette zu ermitteln
  3. Verwenden Sie die Funktion index(), um die Position eines Zeichens in einer Zeichenkette zu ermitteln
  4. Verwenden Sie die for-Schleife, um die Position eines Zeichens in einer Zeichenkette zu ermitteln
Zeichen in einer Zeichenkette in Python suchen

Strings sind eine Sammlung von Zeichen. Jedes Zeichen in der Zeichenkette hat eine bestimmte Position, über die darauf zugegriffen werden kann. In diesem Tutorial wird erläutert, wie Sie die Position eines Zeichens in einer Zeichenkette ermitteln.

Verwenden Sie die Funktion find(), um die Position eines Zeichens in einer Zeichenkette zu ermitteln

Die Funktion find() gibt die Position eines Teilstrings zurück. Wir können auch die Start- und Endpositionen angeben, an denen gesucht werden soll (standardmäßig ist der Start 0 und das Ende die Länge der Zeichenkette).

Im folgenden Code verwenden wir diese Funktion, um die Position eines Zeichens in einer Zeichenkette zu ermitteln.

s = "python is fun"
c = "n"
print(s.find(c))

Ausgabe:

5

Beachten Sie, dass die erste Position des in der Zeichenkette gefundenen Zeichens zurückgegeben wird. Eine andere Sache, an die Sie sich bei dieser Funktion erinnern sollten, ist, dass sie -1 zurückgibt, wenn der angegebene Teilstring nicht in der Zeichenkette vorhanden ist.

Verwenden Sie die Funktion rfind(), um die Position eines Zeichens in einer Zeichenkette zu ermitteln

Diese Funktion ähnelt der Funktion find(), mit dem einzigen Unterschied, dass sie die letzte Position des Teilstrings zurückgibt.

Beispielsweise,

s = "python is fun"
c = "n"
print(s.rfind(c))

Ausgabe:

12

Verwenden Sie die Funktion index(), um die Position eines Zeichens in einer Zeichenkette zu ermitteln

Die Funktion index() wird ähnlich wie die Funktion find() verwendet, um die Position von Zeichen in einer Zeichenkette zurückzugeben. Wie die Funktion find() gibt sie auch das erste Vorkommen des Zeichens in der Zeichenkette zurück.

Beispielsweise,

s = "python is fun"
c = "n"
print(s.index(c))

Ausgabe:

5

Der Unterschied zwischen der Funktion index() und der Funktion find() besteht darin, dass die Funktion index() ValueError zurückgibt, wenn das erforderliche Zeichen in der Zeichenkette fehlt.

Verwenden Sie die for-Schleife, um die Position eines Zeichens in einer Zeichenkette zu ermitteln

Bei dieser Methode können wir jedes Vorkommen des Zeichens in einer Zeichenkette notieren. Wir durchlaufen die Zeichenkette und vergleichen jedes Zeichen einzeln. Jede Position, an der die Übereinstimmung gefunden wird, wird angezeigt und in einer anderen Variablen gespeichert.

Der folgende Code implementiert diese Logik.

s = "python is fun"
c = "n"
lst = []
for pos, char in enumerate(s):
    if char == c:
        lst.append(pos)
print(lst)

Ausgabe:

[5, 12]

Wir verwenden die Funktion enumerate(), weil sie die Iteration erleichtert und jedem Zeichen der Zeichenkette eine Zählervariable zuweist.

Wir können diese Methode auch mithilfe der List Comprehensions-Methode implementieren, die als schneller und sauberer angesehen wird.

Beispielsweise,

s = "python is fun"
c = "n"
print([pos for pos, char in enumerate(s) if char == c])

Ausgabe:

[5, 12]
Manav Narula avatar Manav Narula avatar

Manav is a IT Professional who has a lot of experience as a core developer in many live projects. He is an avid learner who enjoys learning new things and sharing his findings whenever possible.

LinkedIn

Verwandter Artikel - Python String