Ich möchte eine Ganzzahl in eine Zeichenfolge in Python konvertieren. Ich schreibe es vergeblich:
d = 15
d.str()
Wenn ich versuche, es in einen String zu konvertieren, wird ein Fehler angezeigt, int
bei dem kein Attribut aufgerufen wird str
.
In Python gibt es keine Typumwandlung und keinen Typenzwang. Sie müssen Ihre Variable explizit konvertieren.
Um ein Objekt in einen String zu konvertieren, verwenden Sie die str()
Funktion. Es funktioniert mit jedem Objekt, dessen Methode __str__()
definiert ist. Eigentlich
str(a)
ist äquivalent zu
a.__str__()
Das gleiche gilt, wenn Sie etwas in int, float usw. konvertieren möchten.
So verwalten Sie nicht ganzzahlige Eingaben:
quelle
quelle
In Python => 3.6 können Sie folgende
f
Formatierungen verwenden:quelle
Für Python 3.6 können Sie die neue Funktion f-strings zum Konvertieren in einen String verwenden. Sie ist schneller als die Funktion str () und wird folgendermaßen verwendet:
Python bietet aus diesem Grund die Funktion str ().
Eine ausführlichere Antwort finden Sie in diesem Artikel: Konvertieren von Python Int in String und Python String in Int
quelle
Der anständigste Weg ist meiner Meinung nach ``.
quelle
repr(i)
, so dass es für lange Zeit seltsam sein wird. (Versuchen Siei = `2 ** 32`; print i
)Kann
%s
oder verwenden.format
(ODER)
quelle
Für jemanden, der int in einen String mit bestimmten Ziffern konvertieren möchte, wird die folgende Methode empfohlen.
Weitere Informationen finden Sie unter Stapelüberlauffrage Anzeigenummer mit führenden Nullen .
quelle
Mit der Einführung von F-Strings in Python 3.6 funktioniert dies auch:
Es ist tatsächlich schneller als ein Anruf
str()
, auf Kosten der Lesbarkeit.In der Tat ist es schneller als die
%x
Formatierung von Zeichenfolgen und.format()
!quelle