2010-08-03 8 views

Odpowiedz

91

Czy starasz się go reprezentować tylko jedną cyfrę:

print "%.1f" % number 

czy rzeczywiście zaokrąglić innych miejsc po przecinku?

round(number,1) 

lub nawet runda ściśle w dół?

math.floor(number*10)/10 
+0

Czy jest jakaś szansa, że ​​1. i 3. rozwiązanie daje różne wyniki? Myślę, że oba są dokładnie takie same @relet –

+0

Spróbuj numer = -2.55. Zwracają także różne typy. – relet

+0

@DeveshSaini spróbuj numer 2.36. 1. da 2,4, 3 daje 2,3 –

14
>>> "{0:0.1f}".format(45.34531) 
'45.3' 

lub skorzystać z wbudowanego runda:

>>> round(45.34531, 1) 
45.299999999999997 
+4

Aktualizacja: Runda daje mi 45,3 nowdays. – Nathan

Powiązane problemy