Wie man prüft, ob ein String in Python einen Substring enthält

PythonPythonBeginner
Jetzt üben

💡 Dieser Artikel wurde von AI-Assistenten übersetzt. Um die englische Version anzuzeigen, können Sie hier klicken

Einführung

In diesem Lab lernen Sie, wie Sie in Python überprüfen können, ob ein String einen Substring enthält. Das Lab führt Sie durch die Definition von Substrings mithilfe von Slicing (Teilung) mit sowohl positiven als auch negativen Indizes. Sie erstellen ein Python-Skript namens substrings.py, um Substrings aus einem gegebenen String zu extrahieren und sie auf der Konsole auszugeben.

Das Lab zeigt, wie Sie Slicing verwenden können, um Substrings zu definieren, indem Sie Teile eines Strings durch die Angabe von Start- und Endindizes extrahieren. Sie lernen, Substrings wie "Hello" und "LabEx" aus dem String "Hello, LabEx!" zu extrahieren und auch, wie Sie auf das letzte Zeichen des Strings mithilfe von negativen Indizes zugreifen können. Das Lab enthält Anweisungen zum Ausführen des Skripts und zur Überprüfung der Ausgabe.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL python(("Python")) -.-> python/ControlFlowGroup(["Control Flow"]) python(("Python")) -.-> python/BasicConceptsGroup(["Basic Concepts"]) python/BasicConceptsGroup -.-> python/strings("Strings") python/ControlFlowGroup -.-> python/conditional_statements("Conditional Statements") subgraph Lab Skills python/strings -.-> lab-559567{{"Wie man prüft, ob ein String in Python einen Substring enthält"}} python/conditional_statements -.-> lab-559567{{"Wie man prüft, ob ein String in Python einen Substring enthält"}} end

Substrings definieren

In diesem Schritt lernen Sie, wie Sie in Python Substrings definieren können. Ein Substring ist eine zusammenhängende Folge von Zeichen innerhalb eines Strings. Das Verständnis, wie man mit Substrings arbeitet, ist für viele String-Manipulationstasks unerlässlich.

Beginnen wir damit, ein Python-Skript namens substrings.py in Ihrem ~/project-Verzeichnis zu erstellen. Sie können den VS Code-Editor verwenden, um diese Datei zu erstellen.

## ~/project/substrings.py
string = "Hello, LabEx!"

Dieses Skript initialisiert eine String-Variable namens string mit dem Wert "Hello, LabEx!".

Jetzt fügen wir einige Codezeilen hinzu, um Substrings aus diesem String zu extrahieren. Ein einfacher Weg, einen Substring zu definieren, ist die Verwendung von Slicing (Teilung). Slicing ermöglicht es Ihnen, einen Teil eines Strings durch die Angabe von Start- und Endindizes zu extrahieren.

Fügen Sie die folgenden Zeilen zu Ihrer substrings.py-Datei hinzu:

## ~/project/substrings.py
string = "Hello, LabEx!"

substring1 = string[0:5]  ## Characters from index 0 to 4
substring2 = string[7:12] ## Characters from index 7 to 11

print(substring1)
print(substring2)

In diesem Beispiel enthält substring1 die Zeichen von Index 0 bis (aber nicht einschließlich) Index 5, also "Hello". substring2 enthält die Zeichen von Index 7 bis (aber nicht einschließlich) Index 12, also "LabEx".

Um das Skript auszuführen, öffnen Sie Ihr Terminal in VS Code und führen Sie den folgenden Befehl aus:

python ~/project/substrings.py

Sie sollten die folgende Ausgabe sehen:

Hello
LabEx

Sie können auch negative Indizes verwenden, um Substrings zu definieren. Negative Indizes zählen vom Ende des Strings aus. Beispielsweise bezieht sich string[-1] auf das letzte Zeichen des Strings.

Ändern Sie Ihre substrings.py-Datei so, dass sie Folgendes enthält:

## ~/project/substrings.py
string = "Hello, LabEx!"

substring1 = string[0:5]  ## Characters from index 0 to 4
substring2 = string[7:12] ## Characters from index 7 to 11
substring3 = string[-1]   ## Last character

print(substring1)
print(substring2)
print(substring3)

Jetzt führen Sie das Skript erneut aus:

python ~/project/substrings.py

Die Ausgabe sollte jetzt auch das letzte Zeichen des Strings enthalten:

Hello
LabEx
!

Das Verständnis, wie man Substrings mithilfe von Slicing definiert, ist eine grundlegende Fähigkeit in Python. Experimentieren Sie mit verschiedenen Start- und Endindizes, um verschiedene Teile des Strings zu extrahieren.

Verwendung des in-Operators

In diesem Schritt lernen Sie, wie Sie den in-Operator in Python verwenden können, um zu überprüfen, ob ein Substring in einem String vorhanden ist. Der in-Operator ist ein einfacher und effizienter Weg, um die Anwesenheit eines Substrings festzustellen.

Lassen Sie uns weiterhin mit der substrings.py-Datei arbeiten, die Sie im vorherigen Schritt erstellt haben. Wir fügen Code hinzu, um zu überprüfen, ob bestimmte Substrings im ursprünglichen String vorhanden sind.

Öffnen Sie die substrings.py-Datei in Ihrem ~/project-Verzeichnis mit dem VS Code-Editor.

## ~/project/substrings.py
string = "Hello, LabEx!"

substring1 = "Hello"
substring2 = "Python"

print(substring1 in string)
print(substring2 in string)

In diesem Beispiel definieren wir zwei Substrings, substring1 und substring2. Anschließend verwenden wir den in-Operator, um zu überprüfen, ob jeder Substring in der string-Variable vorhanden ist. Der in-Operator gibt True zurück, wenn der Substring gefunden wird, und False sonst.

Um das Skript auszuführen, öffnen Sie Ihr Terminal in VS Code und führen Sie den folgenden Befehl aus:

python ~/project/substrings.py

Sie sollten die folgende Ausgabe sehen:

True
False

Diese Ausgabe zeigt an, dass "Hello" im String "Hello, LabEx!" vorhanden ist, während "Python" nicht vorhanden ist.

Sie können den in-Operator auch in bedingten Anweisungen verwenden. Ändern Sie Ihre substrings.py-Datei so, dass sie Folgendes enthält:

## ~/project/substrings.py
string = "Hello, LabEx!"

substring1 = "Hello"
substring2 = "Python"

if substring1 in string:
    print(f"'{substring1}' is found in '{string}'")
else:
    print(f"'{substring1}' is not found in '{string}'")

if substring2 in string:
    print(f"'{substring2}' is found in '{string}'")
else:
    print(f"'{substring2}' is not found in '{string}'")

Jetzt führen Sie das Skript erneut aus:

python ~/project/substrings.py

Die Ausgabe sollte jetzt ausführlicher sein:

'Hello' is found in 'Hello, LabEx!'
'Python' is not found in 'Hello, LabEx!'

Der in-Operator ist ein leistungsstarkes Werkzeug für die String-Manipulation in Python. Er ermöglicht es Ihnen, einfach die Anwesenheit von Substrings in einem String zu überprüfen, wodurch Ihr Code lesbarer und effizienter wird.

Position mit find() ermitteln

In diesem Schritt lernen Sie, wie Sie die find()-Methode in Python verwenden können, um die Position eines Substrings innerhalb eines Strings zu finden. Die find()-Methode gibt den Index der ersten Vorkommens des Substrings zurück oder -1, wenn der Substring nicht gefunden wird.

Lassen Sie uns weiterhin mit der substrings.py-Datei arbeiten, die Sie in den vorherigen Schritten erstellt haben. Wir fügen Code hinzu, um die Position bestimmter Substrings innerhalb des ursprünglichen Strings zu finden.

Öffnen Sie die substrings.py-Datei in Ihrem ~/project-Verzeichnis mit dem VS Code-Editor.

## ~/project/substrings.py
string = "Hello, LabEx!"

substring1 = "LabEx"
substring2 = "Python"

position1 = string.find(substring1)
position2 = string.find(substring2)

print(position1)
print(position2)

In diesem Beispiel definieren wir zwei Substrings, substring1 und substring2. Anschließend verwenden wir die find()-Methode, um die Position jedes Substrings innerhalb der string-Variable zu finden.

Um das Skript auszuführen, öffnen Sie Ihr Terminal in VS Code und führen Sie den folgenden Befehl aus:

python ~/project/substrings.py

Sie sollten die folgende Ausgabe sehen:

7
-1

Diese Ausgabe zeigt an, dass "LabEx" an Index 7 im String "Hello, LabEx!" gefunden wird, während "Python" nicht gefunden wird (angezeigt durch -1).

Sie können die find()-Methode auch mit optionalen Start- und Endindizes verwenden, um nach einem Substring innerhalb eines bestimmten Bereichs zu suchen. Ändern Sie Ihre substrings.py-Datei so, dass sie Folgendes enthält:

## ~/project/substrings.py
string = "Hello, LabEx! LabEx"

substring1 = "LabEx"

position1 = string.find(substring1)         ## Find first occurrence
position2 = string.find(substring1, 8)      ## Find occurrence starting from index 8
position3 = string.find(substring1, 0, 5)   ## Find occurrence within the first 5 characters

print(position1)
print(position2)
print(position3)

Jetzt führen Sie das Skript erneut aus:

python ~/project/substrings.py

Die Ausgabe sollte jetzt wie folgt lauten:

7
14
-1

In diesem Beispiel:

  • position1 findet das erste Vorkommen von "LabEx" an Index 7.
  • position2 beginnt die Suche ab Index 8 und findet somit das zweite Vorkommen von "LabEx" an Index 14.
  • position3 sucht innerhalb der ersten 5 Zeichen des Strings und findet daher "LabEx" nicht und gibt -1 zurück.

Die find()-Methode ist ein vielseitiges Werkzeug zum Finden von Substrings innerhalb eines Strings. Das Verständnis, wie man sie mit optionalen Start- und Endindizes verwendet, ermöglicht Ihnen, gezieltere Suchen durchzuführen.

Zusammenfassung

In diesem Lab haben Sie gelernt, wie Sie in Python Substrings mithilfe von String-Slicing (Zeichenkettenausschnitt) definieren können. Sie haben ein Python-Skript erstellt, um eine Zeichenkette zu initialisieren und dann Substrings zu extrahieren, indem Sie Start- und Endindizes angegeben haben, einschließlich der Verwendung negativer Indizes, um auf Zeichen vom Ende der Zeichenkette zuzugreifen. Das Lab hat gezeigt, wie Sie diese extrahierten Substrings auf der Konsole ausgeben können.

Der wichtigste Punkt ist das Verständnis, wie man Slicing sowohl mit positiven als auch mit negativen Indizes verwendet, um bestimmte Teile einer Zeichenkette zu definieren und zu extrahieren. Dies ist eine grundlegende Fähigkeit für die Zeichenkettenmanipulation in Python.