Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.python > #89836

Re: Converting 5.223701009526849e-05 to 5e-05

From Ben Finney <ben+python@benfinney.id.au>
Subject Re: Converting 5.223701009526849e-05 to 5e-05
Date 2015-05-03 18:40 +1000
References <87vbgakrlr.fsf@Equus.decebal.nl>
Newsgroups comp.lang.python
Message-ID <mailman.52.1430642455.12865.python-list@python.org> (permalink)

Show all headers | View raw


Cecil Westerhof <Cecil@decebal.nl> writes:

> When I have a value like 5.223701009526849e-05 in most cases I am not
> interested in all the digest after the dot.

What type of value is it?

A ‘float’ value has many different textual representations, most of them
inaccurate. So talking about the digits of a ‘float’ value is only
partly meaningful; digits are a property of some chosen representation,
not intrinsic to the number.

A ‘str’ value can be converted in various ways, but is useless as a
number until you create a new number from the result.

Choosing a solution will rely on understanding that the textual
representation of a number is not itself a number; and vice versa, a
number value does not have a canonical text representation.

> Is there a simple way to convert it to a string like '5e-05'?

Assuming we're talking about a ‘float’ value::

    >>> foo = 5.223701009526849e-05
    >>> "{foo:5.1}".format(foo=foo)
    '5e-05'

See the ‘str.format’ documentation, especially the detailed
documentation for the “format specification mini-language”
<URL:https://docs.python.org/3/library/string.html#format-specification-mini-language>
for how to specify exactly how you want values to be formatted as
text.

-- 
 \         “The double standard that exempts religious activities from |
  `\       almost all standards of accountability should be dismantled |
_o__)                   once and for all.” —Daniel Dennett, 2010-01-12 |
Ben Finney

Back to comp.lang.python | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

Converting 5.223701009526849e-05 to 5e-05 Cecil Westerhof <Cecil@decebal.nl> - 2015-05-03 10:11 +0200
  Re: Converting 5.223701009526849e-05 to 5e-05 Ben Finney <ben+python@benfinney.id.au> - 2015-05-03 18:40 +1000
    Re: Converting 5.223701009526849e-05 to 5e-05 Cecil Westerhof <Cecil@decebal.nl> - 2015-05-03 11:22 +0200
      Re: Converting 5.223701009526849e-05 to 5e-05 Chris Angelico <rosuav@gmail.com> - 2015-05-03 19:51 +1000
        Re: Converting 5.223701009526849e-05 to 5e-05 Cecil Westerhof <Cecil@decebal.nl> - 2015-05-03 12:02 +0200
          Re: Converting 5.223701009526849e-05 to 5e-05 Chris Angelico <rosuav@gmail.com> - 2015-05-03 20:57 +1000
      Re: Converting 5.223701009526849e-05 to 5e-05 Dave Angel <davea@davea.name> - 2015-05-03 07:34 -0400
  Re: Converting 5.223701009526849e-05 to 5e-05 Ben Finney <ben+python@benfinney.id.au> - 2015-05-03 18:48 +1000
    Re: Converting 5.223701009526849e-05 to 5e-05 Alexander Blinne <news@blinne.net> - 2015-05-07 10:00 +0200

csiph-web