in python, how do i split a number by the decimal point

Viewed 13602

So if I run:

a = b / c

and get the result 1.2234

How do i separate it so that I have:

a = 1
b = 0.2234
8 Answers

You can do it in different ways: 1.With inbuilt function:

def fractional_part(numerator, denominator):
    if denominator != 0:
        return math.modf(numerator/denominator)
    return 0

2.Without inbuilt function:

def fractional_part(numerator, denominator):
    if denominator != 0:
        a = str(numerator/denominator).split(".")[0]
        b = "0." + str(numerator/denominator).split(".")[1]
        return (float(a),float(b))
    return 0

You can use also numpy function np.modf:

fractional_part, int_part = np.modf([0,1.2234,3.5])

Of course, this is efficient if you can deal with vectors instead of single numbers one by one.

Related