2017-11-01 1 views
0

Können wir auf 2 Präzisionswerte erhalten, wenn wir 2 Float-Werte 0 hinzufügen 2. Genauigkeit enthält, ohne seine Typ als Float ÄndernIn zwei Float-Werte und bis zu 2 Präzisionswerte

ich einen Ausschnitt haben wie

a = 1.20+1.20 
print a 

sollte die Ausgabe wie

sein
2.40 

aber ich habe die Ausgabe als 2.4, weil python abrundet

Ich habe wie dieser versucht,

from decimal import * 
getcontext().prec = 3 
Decimal(1.20)+Decimal(1.20) 
Decimal('2.40') 

Aber jedes Mal, ich brauche die Präzision Wert zu ändern!

können wir als 2.40 erhalten, ohne seinen Typ zu ändern? Es sollte einen Gleitkommawert als 2.40, keine Zeichenfolge enthalten!

+0

muss ich den Wert in float sein, nicht in einem String-Format! deshalb frage ich, ob es möglich ist, 1.20 + 1.20 = 2.40 zu bekommen ??? –

Antwort

-1

Ja! Sie können eine Float-Nummer runden.

>>> round(2.675, 2) 
2.67 

können Sie weitere Details sehen in python's documentation

+0

Das Problem von OP besteht in der Formatierung von Gleitkommazahlen, nicht in der internen Rundung. –

+0

können Sie drucken ('% 6.2f'% a), um im Format –

+0

Seufzer zu drucken. Nein. OP möchte '2.4' als' 2.40' formatieren. Hole es? Es ist ein Formatierungsproblem. 'Round' wird überhaupt nicht helfen. –

Verwandte Themen