Skip to content Skip to sidebar Skip to footer

How To Convert Int To Float In Python?

Does anyone know how to convert int to float. For some reason, it keeps on printing 0. I want it to print a specific decimal. sum = 144 women_onboard = 314 proportion_womenclass3_s

Solution 1:

To convert an integer to a float in Python you can use the following:

float_version = float(int_version)

The reason you are getting 0 is that Python 2 returns an integer if the mathematical operation (here a division) is between two integers. So while the division of 144 by 314 is 0.45~~~, Python converts this to integer and returns just the 0 by eliminating all numbers after the decimal point.

Alternatively you can convert one of the numbers in any operation to a float since an operation between a float and an integer would return a float. In your case you could write float(144)/314 or 144/float(314). Another, less generic code, is to say 144.0/314. Here 144.0 is a float so it’s the same thing.

Solution 2:

Other than John's answer, you could also make one of the variable float, and the result will yield float.

>>>144 / 314.0
0.4585987261146497

Solution 3:

In Python 3 this is the default behavior, but if you aren't using that you can import division like so:

>>>from __future__ import division>>>144/314
0.4585987261146497

Alternatively you can cast one of the variables to a float when doing your division which will do the same thing

sum = 144women_onboard = 314proportion_womenclass3_survived = sum / float(np.size(women_onboard))

Solution 4:

You can just multiply 1.0

>>>1.0*144/314
0.4585987261146497

Solution 5:

You can literally convert it into float using:

float_value = float(integer_value)

Likewise, you can convert an integer back to float datatype with:

integer_value = int(float_value)

Hope it helped. I advice you to read "Build-In Functions of Python" at this link: https://docs.python.org/2/library/functions.html

Post a Comment for "How To Convert Int To Float In Python?"