print()

Dave Angel davea at ieee.org
Sat Oct 17 17:04:25 EDT 2009


Lie Ryan wrote:
> mattia wrote:
>> Another question (always py3). How can I print only the first number 
>> after the comma of a division?
>> e.g. print(8/3) --> 2.66666666667
>> I just want 2.6 (or 2.66)
>
> Are you sure you don't want that to be 2.7 or 2.67? Then you can use:
> n = int(n * 10**2) / 10**2
> else if 2.7 pr 2.67 is what you wanted, you could use:
> n = round(n, 2)
>
>
Bad idea to use round() to make numbers format properly.  No guarantees 
that the print logic will then print the number rounded the way you 
want.  It could just as easily do 2.69999999999999  when you finally go 
to print it.

Best to use format(), the way it was intended.  Round to decimal while 
converting to decimal.  Otherwise surprises await in dark corners.

DaveA



More information about the Python-list mailing list