Ich habe eine Funktion, die Float-Argumente verwendet (im Allgemeinen Ganzzahlen oder Dezimalstellen mit einer signifikanten Ziffer), und ich muss die Werte in einer Zeichenfolge mit zwei Dezimalstellen (5 -> 5,00, 5,5 -> 5,50 usw.) ausgeben. Wie kann ich das in Python machen?
python
string
programming-languages
floating-point
MarathonStudios
quelle
quelle
d=3
"{:.{}f}".format(5, d)
Formatierung von F-Strings :
Das war neu in Python 3.6 - die Zeichenfolge in Anführungszeichen wie gewohnt platziert, vorangestellt mit
f'...
in gleicher Weise würden Sier'...
für einen Raw - String. Dann platzieren Sie alles, was Sie in Ihre Zeichenfolge, Variablen, Zahlen und Klammern einfügen möchtenf'some string text with a {variable} or {number} within that text'
- und Python wertet wie bei früheren Formatierungsmethoden für Zeichenfolgen aus, außer dass diese Methode viel besser lesbar ist.Sie können in diesem Beispiel sehen, dass wir mit Dezimalstellen formatieren, ähnlich wie bei früheren Formatierungsmethoden für Zeichenfolgen.
NB
a
kann eine Zahl, eine Variable oder sogar ein Ausdruck sein, zf'{3*my_func(3.14):02f}'
.In Zukunft bevorzuge ich mit neuem Code F-Strings gegenüber gängigen% s- oder str.format () -Methoden, da F-Strings weitaus besser lesbar und oft viel schneller sind .
quelle
String-Formatierung:
quelle
math.floor
,math.ceil
oderround
Verwenden der Python-Zeichenfolgenformatierung.
quelle
String-Formatierung:
ODER
Die runde Funktion kann verwendet werden:
Das Gute an round () ist, dass wir dieses Ergebnis in einer anderen Variablen speichern und dann für andere Zwecke verwenden können.
quelle
round
. Es sollte nicht nur zu Anzeigezwecken verwendet werden.round(5.0001, 2)
->5.0
, nicht'5.00'
Kürzeste Python 3-Syntax:
quelle
Wenn Sie die Nummer selbst ändern möchten, anstatt sie nur anders anzuzeigen, verwenden Sie format ()
Formatieren Sie es auf 2 Dezimalstellen:
Beispiel:
quelle
Ich weiß, dass es eine alte Frage ist, aber ich hatte Mühe, die Antwort selbst zu finden. Folgendes habe ich mir ausgedacht:
Python 3:
quelle
Verwenden der Python 3-Syntax:
quelle
Wenn Sie einen Gleitkommawert mit zwei Dezimalstellen erhalten möchten, die zum Zeitpunkt des Aufrufs der Eingabe begrenzt sind,
Schau dir das an ~
quelle
eval
eine Schnur, wenn Sie nur könntenround
? Auf jeden Fall funktioniert dies nicht einmal richtig, denn wenn Sie einspeisen5
, erhalten Sie5.0
statt5.00
wie OP will.nan
undinf
.