How to write string (float) to file?
Tim Peters
tim.one at home.com
Tue Aug 28 14:57:44 EDT 2001
[Rainer Deyke, on '%.2f'%(float(a)/b)' as a way to get 2 digits after
the decimal point]
> That's unreliable. Use this instead:
>
> c = (a * 100) / b
> s = '%03d' % c
> file.write(s[:-2] + '.' + s[-2:])
Rainer, your loathing of fp is fine as a personal choice, but let's not
poison our youth without stronger cause than this <wink>. My bet is the
poster would rather, e.g., see '0.67' than '0.66' given a=2 and b=3. If
you're going to fake fp by hand, then you're responsible for faking all of
it, incl. sensible rounding.
More information about the Python-list
mailing list