Wie man Zeichenfolgen und Ganzzahlen in Python verknüpft
Einführung
Python unterstützt die String-Verkettung mit dem +-Operator. In den meisten anderen Programmiersprachen kümmert sich die Sprache darum, einen String mit einer Ganzzahl (oder anderen primitiven Datentypen) zu verketten, indem sie diese in einen String umwandelt und dann verkettet.
Wenn Sie jedoch in Python versuchen, einen String mit einer Ganzzahl mit dem +-Operator zu verketten, erhalten Sie einen Laufzeitfehler.
Beispiel
Lassen Sie uns ein Beispiel für die Verkettung eines Strings (str) und einer Ganzzahl (int) mit dem + Operator betrachten.
current_year_message = 'Year is '
current_year = 2018
print(current_year_message + current_year)
Die gewünschte Ausgabe ist der String: Jahr ist 2018. Wenn wir diesen Code jedoch ausführen, erhalten wir den folgenden Laufzeitfehler:
Traceback (most recent call last):
File "/Users/sammy/Documents/github/journaldev/Python-3/basic_examples/strings/string_concat_int.py", line 5, in <module>
print(current_year_message + current_year)
TypeError: can only concatenate str (not "int") to str
Wie verbindet man also str und int in Python? Es gibt verschiedene andere Möglichkeiten, diese Operation auszuführen.
Voraussetzungen
Um dieses Tutorial abzuschließen, benötigen Sie:
- Vertrautheit mit der Installation von Python 3. Und Vertrautheit mit dem Programmieren in Python. Wie man in Python 3 programmiert oder VS Code für Python verwendet.
Dieses Tutorial wurde mit Python 3.9.6 getestet.
Verwendung der str()-Funktion
Wir können eine int an die str()-Funktion übergeben, sie wird in eine str umgewandelt:
print(current_year_message + str(current_year))
Die current_year Ganzzahl wird als Zeichenfolge zurückgegeben: Jahr ist 2018.
Verwendung des % Interpolationsoperators
Wir können Werte mit printf-ähnlicher String-Formatierung an eine Umre desspezifikation übergeben:
print("%s%s" % (current_year_message, current_year))
Die current_year Ganzzahl wird in eine Zeichenfolge interpoliert: Jahr ist 2018.
Verwendung der str.format() Funktion
Wir können auch die Funktion str.format() zur Verkettung von Zeichenfolgen und Ganzzahlen verwenden.
print("{}{}".format(current_year_message, current_year))
Die current_year Ganzzahl wird in eine Zeichenfolge umgewandelt: Jahr ist 2018.
F-Strings verwenden
Wenn Sie Python 3.6 oder höhere Versionen verwenden, können Sie auch f-Strings verwenden.
print(f'{current_year_message}{current_year}')
Die current_year Ganzzahl wird in eine Zeichenfolge interpoliert: Jahr ist 2018.
Schlussfolgerung
Sie können das vollständige Python-Skript und weitere Python-Beispiele in unserem GitHub-Repository einsehen.
