Website-Suche

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.