Convert scientific notation to decimal - python

How to convert scientific notation to floating point number? Here is an example of what I want to avoid:

Python 2.7.3 (default, Apr 14 2012, 08:58:41) [GCC] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>> a=[78.40816326530613, 245068094.16326532] >>> print a[0]/a[1] 3.19944395589e-07 >>> print float(a[0]/a[1]) 3.19944395589e-07 >>> print float(a[0])/float(a[1]) 3.19944395589e-07 
+4
source share
3 answers

Scientific notation is just a convenient way to print floating point numbers. When there are many leading zeros in your example, a scientific notation may be easier to read.

To print a certain number of digits after a decimal point, you can specify a format string with printing:

 print 'Number is: %.8f' % (float(a[0]/a[1])) 

Or you can use format() , as in other answers.

+6
source

Use string formatting:

 >>> "{:.50f}".format(float(a[0]/a[1])) '0.00000031994439558937568872208504280885144055446290' 
+7
source

This is a floating point number, it just prints in a friendly format. If you want to display a certain number of decimal places when printing, use format :

 >>> print format(a[0]/a[1], '.65f') 0.00000031994439558937568872208504280885144055446289712563157081604 
+4
source

Source: https://habr.com/ru/post/1484826/


All Articles