[Tutor] rounding
Sean Perry
shaleh at speakeasy.net
Sun Jan 30 22:21:00 CET 2005
Kim Branson wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> Hi all,
>
> heres a quick one for you,
> I have a series of data that I am using dictionaries to build histograms
> for. I'd like to round the data to the nearest 10, i.e if the value is
> 15.34 should we round down to 10? and conversely rounding say 19.30 to
> 20. I'm thinking 15.5 and above would round up. Can anyone point me a at
> a quick and painless way of achieving this?
>
def round10s(f):
rem = f % 10
tens = int(f / 10)
if rem >= 5.5:
return (tens + 1.0) * 10.0
return tens * 10.0
if __name__ == '__main__':
tests = [15.34, 15.54, 19.65, 2.34, 8.2, 0.0, 20.0]
for i in tests:
print "%.2f: %.2f" % (i, round10s(i))
yields
15.34: 10.00
15.54: 20.00
19.65: 20.00
2.34: 0.00
8.20: 10.00
0.00: 0.00
20.00: 20.00
More information about the Tutor
mailing list