Display scientific notation as float in Python


Scientific notation is a standard way of representing numbers in the scientific and mathematical fields.

However, in some cases, it may be more convenient to display these numbers in the traditional decimal format, also known as a floating-point format. Python provides a variety of ways to convert scientific notation to a float format.

Scientific notation as float in Python

One way to display scientific notation as a float in Python is by using the float() function. The float() function takes a string as input and returns a floating-point number. To convert a number in scientific notation to a float using the float() function, you simply need to pass the number as a string to the function.

Different methods used in python for scientific notation are −

  • float method

  • format method

  • g format method

Float method

For example, let's say you have the following number in scientific notation: 1.234e+6. To convert this to a float format, you can use the float() function as follows −

>>> number_in_scientific_notation = "1.234e+6"
>>> float(number_in_scientific_notation)
1234000.0

Format method

Another way to display scientific notation as a float in Python is by using the format() method. The format() method allows you to specify the number of decimal places to display in the float format. To convert a number in scientific notation to a float using the format() method, you need to first convert the scientific notation to a float using the float() function, and then use the format() method to specify the number of decimal places.

For example, let's say you have the following number in scientific notation: 1.234e+6. To convert this to a float format with two decimal places, you can use the following code −

>>> number_in_scientific_notation = "1.234e+6"
>>> number_as_float = float(number_in_scientific_notation)
>>> "{:.2f}".format(number_as_float)
"1234000.00"

In this code, the float() function converts the number in scientific notation to a float format, and the format() method formats the float with two decimal places.

g format

The "g" format specifier in Python automatically chooses between fixed and scientific notation based on the number. It will choose the representation that uses the least amount of digits to represent the number.

Here is an example −

x = 0.0000034567 print(f"The number is {x:g}") 

y = 10000000.0
print(f"The number is {y:g}")

In this example, the "g" format specifier is used to print the number y. Since y is a large number, the output will be in fixed notation

Use the g format specifier to automatically choose between fixed and scientific notation based on the number −

x = 123456.789 print("{:.3g}".format(x)) 

Output

1.23e+05 

Here are some more examples of scientific notation of floats using Python −

Step 1 − Convert a float to scientific notation using the e format specifier −

x = 0.0000234 print("{:.2e}".format(x)) 

Output

2.34e-05 

Step 2 − Use the f format specifier to specify the number of decimal places and the e format specifier to display the result in scientific notation −

x = 1234.56789 print("{:.2f}e{:+03d}".format(x, -4))

Output

1234.57e-04  

Step 3 − Use the g format specifier to automatically choose between fixed and scientific notation based on the number −

x = 123456.789 print("{:.3g}".format(x)) 

Output

1.23e+05  

Note that the precision and the format can be adjusted to suit your needs.

Conclusion

In conclusion, there are various ways to convert and display the scientific notation as float in Python. Using the float() function and the format() method are two commonly used methods to achieve this.

Updated on: 31-Jul-2023

5K+ Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements