logo

Python-String

Ein String ist eine Datenstruktur in der Python-Programmierung, die eine Folge von Zeichen darstellt. Es handelt sich um einen unveränderlichen Datentyp, was bedeutet, dass Sie eine einmal erstellte Zeichenfolge nicht mehr ändern können. Python-Strings werden häufig in vielen verschiedenen Anwendungen verwendet, beispielsweise zum Speichern und Bearbeiten von Textdaten, zur Darstellung von Namen, Adressen und anderen Datentypen, die als Text dargestellt werden können.

Inhaltsverzeichnis

Was ist ein String in Python?

Python Beim Programmieren gibt es keinen Zeichendatentyp, ein einzelnes Zeichen ist einfach eine Zeichenfolge mit der Länge 1. Sehen wir uns das an Python-String-Syntax :



Syntax des String-Datentyps in Python

string_variable = 'Hello, world!'>

Beispiel für einen String-Datentyp in Python

Python
string_0 = 'A Computer Science portal for geeks' print(string_0) print(type(string_0))>

Ausgabe:

A Computer Science portal for geeks>

Erstellen Sie einen String in Python

Strings in Python kann mit einfachen oder doppelten oder sogar dreifachen Anführungszeichen erstellt werden. Sehen wir uns an, wie wir einen String in Python definieren oder wie man einen String in Python schreibt.

Beispiel:

In diesem Beispiel zeigen wir verschiedene Möglichkeiten zum Erstellen eines Python-Strings. Wir erstellen eine Zeichenfolge mit einfachen Anführungszeichen (‘‘), doppelten Anführungszeichen ( ) und dreifachen doppelten Anführungszeichen ( ). Die dreifachen Anführungszeichen können verwendet werden, um mehrzeilige Zeichenfolgen in Python zu deklarieren.

Python
# Creating a String # with single Quotes String1 = 'Welcome to the Geeks World' print('String with the use of Single Quotes: ') print(String1) # Creating a String # with double Quotes String1 = 'I'm a Geek' print('
String with the use of Double Quotes: ') print(String1) # Creating a String # with triple Quotes String1 = '''I'm a Geek and I live in a world of 'Geeks'''' print('
String with the use of Triple Quotes: ') print(String1) # Creating String with triple # Quotes allows multiple lines String1 = '''Geeks  For  Life''' print('
Creating a multiline String: ') print(String1)>

Ausgabe:

String with the use of Single Quotes: Welcome to the Geeks World String with the use of Double Quotes: I'm a Geek String with the use of Triple Quotes: I'm a Geek and I live in a world of 'Geeks' Creating a multiline String: Geeks For Life>

Auf Zeichen in Python String zugreifen

In Tutorials zur Python-Programmierung kann mithilfe der Methode der Indizierung auf einzelne Zeichen eines Strings zugegriffen werden. Durch die Indizierung können negative Adressreferenzen auf Zeichen am Ende des Strings zugreifen, z. B. -1 bezieht sich auf das letzte Zeichen, -2 bezieht sich auf das vorletzte Zeichen und so weiter.

Beim Zugriff auf einen Index außerhalb des Bereichs wird ein Fehler verursacht Indexfehler . Es dürfen nur Ganzzahlen als Index, Float oder andere Typen übergeben werden, die ein Problem verursachen TypeError .

Indizierung von Python-Strings

Indizierung der Python-String-Syntax

Positive Indizierung von Python-Strings

In diesem Beispiel definieren wir eine Zeichenfolge in der Python-Programmierung und greifen mithilfe positiver Indizierung auf ihre Zeichen zu. Das 0. Element ist das erste Zeichen der Zeichenfolge.

Python
String1 = 'GeeksForGeeks' print('Initial String: ', String1) # Printing First character print('First character of String is: ', String1[0])>

Ausgabe:

Initial String: GeeksForGeeks First character of String is: G>

Negative Indizierung von Python-Strings

In diesem Beispiel greifen wir mithilfe einer negativen Indizierung auf die Zeichen zu. Das -3. Element ist das drittletzte Zeichen der Zeichenfolge.

Python
String1 = 'GeeksForGeeks' print('Initial String: ', String1) # Printing Last character print('Last character of String is: ', String1[-3])>

Ausgabe

Initial String: GeeksForGeeks Last character of String is: e>

String-Slicing-Python

In Tutorials zur Python-Programmierung wird die Saitenschneiden Die Methode wird verwendet, um auf einen Bereich von Zeichen im String zuzugreifen. Das Slicing in einem String erfolgt mithilfe eines Slicing-Operators, d. h. eines Doppelpunkts (:). Beachten Sie bei der Verwendung dieser Methode, dass die nach dem Slicing zurückgegebene Zeichenfolge das Zeichen am Startindex, nicht jedoch das Zeichen am letzten Index enthält.

In diesem Beispiel verwenden wir die String-Slicing-Methode, um einen Teilstring des ursprünglichen Strings zu extrahieren. Das [3:12] gibt an, dass das String-Slicing vom 3. Index des Strings bis zum 12. Index beginnt (12. Zeichen nicht inbegriffen). Wir können beim String-Slicing auch eine negative Indizierung verwenden.

Python
# Creating a String String1 = 'GeeksForGeeks' print('Initial String: ') print(String1) # Printing 3rd to 12th character print('
Slicing characters from 3-12: ') print(String1[3:12]) # Printing characters between # 3rd and 2nd last character print('
Slicing characters between ' + '3rd and 2nd last character: ') print(String1[3:-2])>

Ausgabe:

Initial String: GeeksForGeeks Slicing characters from 3-12: ksForGeek Slicing characters between 3rd and 2nd last character: ksForGee>

Python-String umgekehrt

In Tutorials zur Python-Programmierung können wir auch auf Zeichen aus einer Zeichenfolge zugreifen umgekehrte Zeichenfolgen in Python Programmierung. Wir können einen String umkehren, indem wir die String-Slicing-Methode verwenden.

In diesem Beispiel kehren wir eine Zeichenfolge um, indem wir auf den Index zugreifen. Wir haben die ersten beiden Teile des Slice nicht angegeben, was bedeutet, dass wir die gesamte Zeichenfolge berücksichtigen, vom Startindex bis zum letzten Index.

Python
#Program to reverse a string gfg = 'geeksforgeeks' print(gfg[::-1])>

Ausgabe:

skeegrofskeeg>

BuildIn Reverse-Funktion in Python

Wir können eine Zeichenfolge auch umkehren, indem wir „built-in“ verwenden verbinden Und umgedreht Funktionen und Übergabe der Zeichenfolge als Parameter an die Funktion reversed().

Python
# Program to reverse a string gfg = 'geeksforgeeks' # Reverse the string using reversed and join function gfg = ''.join(reversed(gfg)) print(gfg)>

Ausgabe:

skeegrofskeeg>

Löschen/Aktualisieren aus einer Zeichenfolge

In Python ist das Aktualisieren oder Löschen von Zeichen aus einem String nicht erlaubt. Dies führt zu einem Fehler, da die Elementzuweisung oder das Löschen von Elementen aus einem String nicht unterstützt wird. Allerdings ist das Löschen des gesamten Strings mit dem integrierten Schlüsselwort del möglich. Dies liegt daran, dass Strings unveränderlich sind und Elemente eines Strings daher nach der Zuweisung nicht mehr geändert werden können. Nur neue Zeichenfolgen können demselben Namen zugewiesen werden.

Einen Charakter aktualisieren

Ein Zeichen einer Zeichenfolge kann in Python aktualisiert werden, indem die Zeichenfolge zunächst in ein umgewandelt wird Python-Liste und dann das Element in der Liste aktualisieren. Da Listen von Natur aus veränderlich sind, können wir das Zeichen aktualisieren und die Liste dann wieder in den String konvertieren.

Eine andere Methode ist die Verwendung der String-Slicing-Methode. Schneiden Sie die Zeichenfolge vor dem Zeichen auf, das Sie aktualisieren möchten, fügen Sie dann das neue Zeichen hinzu und fügen Sie schließlich den anderen Teil der Zeichenfolge erneut durch String-Slicing hinzu.

Beispiel:

In diesem Beispiel verwenden wir sowohl die Listen- als auch die String-Slicing-Methode, um ein Zeichen zu aktualisieren. Wir haben String1 in eine Liste konvertiert, seinen Wert an einem bestimmten Element geändert und ihn dann mit Python wieder in einen String konvertiert string join() Methode.

Bei der String-Slicing-Methode haben wir die Zeichenfolge bis zu dem Zeichen, das wir aktualisieren möchten, zerlegt, das neue Zeichen verkettet und schließlich den verbleibenden Teil der Zeichenfolge verkettet.

Python
# Python Program to Update # character of a String String1 = 'Hello, I'm a Geek' print('Initial String: ') print(String1) # Updating a character of the String ## As python strings are immutable, they don't support item updation directly ### there are following two ways #1 list1 = list(String1) list1[2] = 'p' String2 = ''.join(list1) print('
Updating character at 2nd Index: ') print(String2) #2 String3 = String1[0:2] + 'p' + String1[3:] print(String3)>

Ausgabe:

Initial String: Hello, I'm a Geek Updating character at 2nd Index: Heplo, I'm a Geek Heplo, I'm a Geek>

Gesamte Zeichenfolge aktualisieren

Da Python-Strings in der Python-Programmierung von Natur aus unveränderlich sind, können wir den vorhandenen String nicht aktualisieren. Wir können nur der gleichnamigen Variablen einen völlig neuen Wert zuweisen.

Beispiel: In diesem Beispiel weisen wir „String1“ zunächst einen Wert zu und aktualisieren ihn dann, indem wir ihm einen völlig anderen Wert zuweisen. Wir haben lediglich die Referenz geändert.

Python
# Python Program to Update # entire String String1 = 'Hello, I'm a Geek' print('Initial String: ') print(String1) # Updating a String String1 = 'Welcome to the Geek World' print('
Updated String: ') print(String1)>

Ausgabe:

Initial String: Hello, I'm a Geek Updated String: Welcome to the Geek World>

Einen Charakter löschen

Python-Strings sind unveränderlich, das heißt, wir können kein Zeichen daraus löschen. Wenn wir versuchen, das Zeichen mit zu löschen des Wenn Sie das Schlüsselwort eingeben, wird ein Fehler generiert.

Python
# Python Program to delete # character of a String String1 = 'Hello, I'm a Geek' print('Initial String: ') print(String1) print('Deleting character at 2nd Index: ') del String1[2] print(String1)>

Ausgabe:

Initial String: Hello, I'm a Geek Deleting character at 2nd Index: Traceback (most recent call last): File 'e:GFGPython codesCodesdemo.py', line 9, in del String1[2] TypeError: 'str' object doesn't support item deletion>

Mithilfe des Slicings können wir jedoch das Zeichen aus der ursprünglichen Zeichenfolge entfernen und das Ergebnis in einer neuen Zeichenfolge speichern.

Beispiel: In diesem Beispiel schneiden wir zunächst die Zeichenfolge bis zu dem Zeichen auf, das wir löschen möchten, und verketten dann die verbleibende Zeichenfolge neben dem gelöschten Zeichen.

Python
# Python Program to Delete # characters from a String String1 = 'Hello, I'm a Geek' print('Initial String: ') print(String1) # Deleting a character # of the String String2 = String1[0:2] + String1[3:] print('
Deleting character at 2nd Index: ') print(String2)>

Ausgabe:

Initial String: Hello, I'm a Geek Deleting character at 2nd Index: Helo, I'm a Geek>

Gesamte Zeichenfolge löschen

In der Python-Programmierung ist das Löschen der gesamten Zeichenfolge mit dem Schlüsselwort del möglich. Wenn wir außerdem versuchen, die Zeichenfolge zu drucken, führt dies zu einem Fehler, da die Zeichenfolge gelöscht wird und nicht zum Drucken verfügbar ist.

Python
# Python Program to Delete # entire String String1 = 'Hello, I'm a Geek' print('Initial String: ') print(String1) # Deleting a String # with the use of del del String1 print('
Deleting entire String: ') print(String1)>

Fehler:

Ex des Benutzernamens
Traceback (most recent call last): File '/home/e4b8f2170f140da99d2fe57d9d8c6a94.py', line 12, in print(String1) NameError: name 'String1' is not defined>

Escape-Sequenzierung in Python

Beim Drucken von Zeichenfolgen mit einfachen und doppelten Anführungszeichen kommt es zu Problemen Syntax-Fehler weil String bereits einfache und doppelte Anführungszeichen enthält und daher nicht mit einem dieser Anführungszeichen gedruckt werden kann. Daher werden zum Drucken eines solchen Strings entweder dreifache Anführungszeichen oder Escape-Sequenzen zum Drucken von Strings verwendet.

Escape-Sequenzen beginnen mit einem Backslash und können unterschiedlich interpretiert werden. Wenn einfache Anführungszeichen zur Darstellung einer Zeichenfolge verwendet werden, müssen alle in der Zeichenfolge vorhandenen einfachen Anführungszeichen maskiert werden, und das Gleiche gilt für doppelte Anführungszeichen.

Python
# Initial String String1 = '''I'm a 'Geek'''' print('Initial String with use of Triple Quotes: ') print(String1) # Escaping Single Quote String1 = 'I'm a 'Geek'' print('
Escaping Single Quote: ') print(String1) # Escaping Double Quotes String1 = 'I'm a 'Geek'' print('
Escaping Double Quotes: ') print(String1) # Printing Paths with the # use of Escape Sequences String1 = 'C:PythonGeeks' print('
Escaping Backslashes: ') print(String1) # Printing Paths with the # use of Tab String1 = 'Hi	Geeks' print('
Tab: ') print(String1) # Printing Paths with the # use of New Line String1 = 'Python
Geeks' print('
New Line: ') print(String1)>

Ausgabe:

Initial String with use of Triple Quotes: I'm a 'Geek' Escaping Single Quote: I'm a 'Geek' Escaping Double Quotes: I'm a 'Geek' Escaping Backslashes: C:PythonGeeks Tab: Hi Geeks New Line: Python Geeks>

Beispiel:

Um die Escape-Sequenzen in einem String zu ignorieren, R oder R verwendet wird, bedeutet dies, dass es sich bei der Zeichenfolge um eine Rohzeichenfolge handelt und die darin enthaltenen Escape-Sequenzen ignoriert werden sollen.

Python
# Printing hello in octal String1 = '110145154154157' print('
Printing in Octal with the use of Escape Sequences: ') print(String1) # Using raw String to # ignore Escape Sequences String1 = r'This is 110145154154157' print('
Printing Raw String in Octal Format: ') print(String1) # Printing Geeks in HEX String1 = 'This is x47x65x65x6bx73 in x48x45x58' print('
Printing in HEX with the use of Escape Sequences: ') print(String1) # Using raw String to # ignore Escape Sequences String1 = r'This is x47x65x65x6bx73 in x48x45x58' print('
Printing Raw String in HEX Format: ') print(String1)>

Ausgabe:

Printing in Octal with the use of Escape Sequences: Hello Printing Raw String in Octal Format: This is 110145154154157 Printing in HEX with the use of Escape Sequences: This is Geeks in HEX Printing Raw String in HEX Format: This is x47x65x65x6bx73 in x48x45x58>

Python-String-Formatierung

Strings in Python oder String-Datentypen in Python können mithilfe von formatiert werden Format() Methode, die ein sehr vielseitiges und leistungsstarkes Werkzeug zum Formatieren von Strings ist. Die Formatmethode in String enthält geschweifte Klammern {} als Platzhalter, die Argumente entsprechend der Position oder dem Schlüsselwort enthalten können, um die Reihenfolge anzugeben.

Beispiel 1: In diesem Beispiel deklarieren wir eine Zeichenfolge, die die geschweiften Klammern {} enthält, die als Platzhalter fungieren, und geben ihnen Werte, um zu sehen, welche Rolle die Position der Zeichenfolgendeklaration spielt.

Python
# Python Program for # Formatting of Strings # Default order String1 = '{} {} {}'.format('Geeks', 'For', 'Life') print('Print String in default order: ') print(String1) # Positional Formatting String1 = '{1} {0} {2}'.format('Geeks', 'For', 'Life') print('
Print String in Positional order: ') print(String1) # Keyword Formatting String1 = '{l} {f} {g}'.format(g='Geeks', f='For', l='Life') print('
Print String in order of Keywords: ') print(String1)>

Ausgabe:

Print String in default order: Geeks For Life Print String in Positional order: For Geeks Life Print String in order of Keywords: Life For Geeks>

Beispiel 2: Ganzzahlen wie binär, hexadezimal usw. und Gleitkommazahlen können mithilfe von Formatbezeichnern gerundet oder in Exponentenform angezeigt werden.

Python
# Formatting of Integers String1 = '{0:b}'.format(16) print('
Binary representation of 16 is ') print(String1) # Formatting of Floats String1 = '{0:e}'.format(165.6458) print('
Exponent representation of 165.6458 is ') print(String1) # Rounding off Integers String1 = '{0:.2f}'.format(1/6) print('
one-sixth is : ') print(String1)>

Ausgabe:

Binary representation of 16 is 10000 Exponent representation of 165.6458 is 1.656458e+02 one-sixth is : 0.17>

Beispiel 3: Im String-Datentyp in Python kann eine Zeichenfolge mithilfe von Formatbezeichnern, getrennt durch einen Doppelpunkt (:), links, rechts oder in der Mitte ausgerichtet werden. Das () gibt an, dass die Zeichenfolge nach rechts ausgerichtet werden soll, und (^) gibt an, dass die Zeichenfolge in der Mitte ausgerichtet werden soll. Wir können auch die Länge angeben, in der es ausgerichtet werden soll. Beispielsweise bedeutet (<10), dass die Zeichenfolge innerhalb eines Felds mit einer Breite von 10 Zeichen linksbündig ausgerichtet werden soll.

Python
# String alignment String1 = '|{:<10}|{:^10}|{:>10}|'.format('Geeks', 'for', 'Geeks') print('
Linke, zentrierte und rechte Ausrichtung mit Formatierung: ') print(String1) # Zur Demonstration Ausrichten von Leerzeichen String1 = '
{0:^16} wurde gegründet in {1:<4}!'.format('techcodeview.com', 2009) print(String1)>

Ausgabe:

Left, center and right alignment with Formatting: |Geeks | for | Geeks| techcodeview.com was founded in 2009 !>

Beispiel 4: Die Formatierung im alten Stil erfolgte ohne Verwendung der Formatierungsmethode mithilfe von Die % Operator

Python
# Python Program for # Old Style Formatting # of Integers Integer1 = 12.3456789 print('Formatting in 3.2f format: ') print('The value of Integer1 is %3.2f' % Integer1) print('
Formatting in 3.4f format: ') print('The value of Integer1 is %3.4f' % Integer1)>

Ausgabe:

Formatting in 3.2f format: The value of Integer1 is 12.35 Formatting in 3.4f format: The value of Integer1 is 12.3457>

Ähnliche Lektüre – String-Methoden

Nützliche Python-String-Operationen

Python-String-Konstanten

Integrierte Funktion

Beschreibung

string.ascii_letters

Verkettung der Konstanten ascii_lowercase und ascii_uppercase.

string.ascii_lowercase

Verkettung von Kleinbuchstaben

string.ascii_uppercase

Verkettung von Großbuchstaben

string.digits

Ziffer in Zeichenfolgen

string.hexdigits

Hexadezimalzahl in Strings

string.letters

Verkettung der Zeichenketten Klein- und Großschreibung

string.lowercase

Eine Zeichenfolge muss Kleinbuchstaben enthalten.

string.octdigits

Oktadigit in einer Zeichenfolge

Zeichenfolge.Interpunktion

ASCII-Zeichen mit Satzzeichen.

string.printable

Zeichenkette, die gedruckt werden kann

String.endswith()

Gibt True zurück, wenn eine Zeichenfolge mit dem angegebenen Suffix endet, andernfalls wird False zurückgegeben

String.startswith()

Gibt True zurück, wenn eine Zeichenfolge mit dem angegebenen Präfix beginnt, andernfalls wird False zurückgegeben

String.isdigit()

Gibt True zurück, wenn alle Zeichen in der Zeichenfolge Ziffern sind. Andernfalls wird False zurückgegeben.

String.isalpha()

Gibt „True“ zurück, wenn alle Zeichen in der Zeichenfolge Buchstaben sind. Andernfalls wird „False“ zurückgegeben.

string.isdecimal()

Gibt „true“ zurück, wenn alle Zeichen in einer Zeichenfolge dezimal sind.

str.format()

eine der Zeichenfolgenformatierungsmethoden in Python3, die mehrere Ersetzungen und Wertformatierungen ermöglicht.

String.index

Gibt die Position des ersten Vorkommens eines Teilstrings in einem String zurück

string.uppercase

Eine Zeichenfolge muss Großbuchstaben enthalten.

string.whitespace

Eine Zeichenfolge, die alle Zeichen enthält, die als Leerzeichen gelten.

string.swapcase()

Die Methode wandelt alle Großbuchstaben in Kleinbuchstaben und umgekehrt der angegebenen Zeichenfolge um und gibt sie zurück

ersetzen()

Gibt eine Kopie der Zeichenfolge zurück, wobei alle Vorkommen einer Teilzeichenfolge durch eine andere Teilzeichenfolge ersetzt werden.

Veraltete String-Funktionen

Integrierte Funktion

Beschreibung

string.Isdecimal

Gibt „true“ zurück, wenn alle Zeichen in einer Zeichenfolge dezimal sind

String.Isalnum

Gibt „true“ zurück, wenn alle Zeichen in einer bestimmten Zeichenfolge alphanumerisch sind.

string.Istitle

Gibt „True“ zurück, wenn es sich bei der Zeichenfolge um eine Zeichenfolge in Groß- und Kleinschreibung handelt

String.partition

teilt die Zeichenfolge beim ersten Vorkommen des Trennzeichens und gibt ein Tupel zurück.

String.Iidentifier

Überprüfen Sie, ob eine Zeichenfolge ein gültiger Bezeichner ist oder nicht.

String.len

Gibt die Länge der Zeichenfolge zurück.

String.rindex

Gibt den höchsten Index des Teilstrings innerhalb des Strings zurück, wenn ein Teilstring gefunden wird.

String.Max

Gibt das höchste alphabetische Zeichen in einer Zeichenfolge zurück.

String.min

Gibt das minimale alphabetische Zeichen in einer Zeichenfolge zurück.

String.splitlines

Gibt eine Liste von Zeilen in der Zeichenfolge zurück.

string.capitalize

Gibt ein Wort zurück, dessen erstes Zeichen groß geschrieben ist.

string.expandtabs

Erweitern Sie Tabulatoren in einer Zeichenfolge und ersetzen Sie sie durch ein oder mehrere Leerzeichen

string.find

Gibt die niedrigste Indizierung einer Unterzeichenfolge zurück.

string.rfind

Finden Sie den höchsten Index.

string.count

Gibt die Anzahl der (nicht überlappenden) Vorkommen des Teilstrings sub im String zurück

string.lower

Geben Sie eine Kopie von s zurück, jedoch mit Großbuchstaben und in Kleinbuchstaben umgewandelten Buchstaben.

string.split

Gibt eine Liste der Wörter der Zeichenfolge zurück, wenn das optionale zweite Argument sep fehlt oder keines vorhanden ist

Python-Docstrings
  • Permutation einer bestimmten Zeichenfolge mithilfe einer integrierten Funktion
  • Finden Sie die Häufigkeit jedes Wortes in einer Zeichenfolge in Python
  • Programm zum Akzeptieren von Zeichenfolgen, die alle Vokale enthalten
  • Zählen Sie die Anzahl übereinstimmender Zeichen in einem Zeichenfolgenpaar
  • Zählt alle Präfixe in der angegebenen Zeichenfolge mit der größten Häufigkeit
  • Programm zum Überprüfen, ob eine Zeichenfolge Sonderzeichen enthält
  • Generieren von zufälligen Zeichenfolgen, bis eine bestimmte Zeichenfolge generiert wird
  • Python-Programm zum Zählen von Groß- und Kleinbuchstaben ohne Verwendung integrierter Funktionen