The Wayback Machine - https://web.archive.org/web/20230512160718/https://www.geeksforgeeks.org/python-modf-function/
Skip to content
Related Articles
Get the best out of our app
GeeksforGeeks App
Open App
geeksforgeeks
Browser
Continue

Related Articles

Python math function | modf()

Improve Article
Save Article
Like Article
Improve Article
Save Article
Like Article

modf() function is an inbuilt function in Python that returns the fractional and integer parts of the number in a two-item tuple. Both parts have the same sign as the number. The integer part is returned as a float. Syntax :

modf(number) 

Time Complexity: O(1)

Auxiliary Space: O(1)

Parameter :

There is only one mandatory parameter which is the number. 

Returns : This method returns the fractional and integer parts of number in a two-item tuple. Both parts have the same sign as the number. The integer part is returned as a float. Exception :

TypeError:  If anything other than a float number is passed, it returns a type error. 

Below is the Python3 implementation of modf() method : Code #1 

Python3




# Python3 program to demonstrate the function modf()
 
# This will import math module
import math  
 
# modf() function used with a positive number
print("math.modf(100.12) : ", math.modf(100.12))
 
# modf() function used with a negative number
print("math.modf(-100.72) : ", math.modf(-100.72))
 
print("math.modf(2) : ", math.modf(2))

Output :

math.modf(100.12) :  (0.12000000000000455, 100.0)
math.modf(-100.72) :  (-0.7199999999999989, -100.0)
math.modf(2) :  (0.0, 2.0)

  Code #2 : TypeError 

Python3




# Python3 program to demonstrate the 
# error in function modf()
 
# This will import math module
import math  
 
# modf() function used with a positive number
print("math.modf(100.12) : ", math.modf("100.12"))

Output : 

Traceback (most recent call last):
  File "/home/fa6d7643de17bafe9a0e0693458e4bdb.py", line 9, in 
    print("math.modf(100.12) : ", math.modf("100.12"))
TypeError: a float is required

  Code #3

Python3




# Python3 program to demonstrate the
# error in function modf()
 
# This will import math module
from math import modf
 
lst = [3.12, -5.14, 13.25, -5.21]
tpl = (33.12, -15.25, 3.15, -31.2)
 
 
# modf() function on elements of list
print("modf() on First list element : ", modf(lst[0]))
print("modf() on third list element : ", modf(lst[2]))
 
# modf() function on elements of tuple
print("modf() on Second tuple element : ", modf(tpl[1]))
print("modf() on Fourth tuple element : ", modf(tpl[3]))

Output :

modf() on First list element :  (0.1200000000000001, 3.0)
modf() on third list element :  (0.25, 13.0)
modf() on Second tuple element :  (-0.25, -15.0)
modf() on Fourth tuple element :  (-0.1999999999999993, -31.0)

Practical Application : Given two float numbers, multiply the fractional part and return the answer. Code #4 : 

Python3




# Python3 program to demonstrate the
# application of function modf()
 
# This will import math module
import math  
 
# modf() function to multiply fractional part
a = math.modf(11.2)
b = math.modf(12.3)
 
# Multiply the fractional part as is stored 
# in 0th index of both the tuple
print(a[0]*b[0])

Output :

0.05999999999999993

My Personal Notes arrow_drop_up
Last Updated : 14 Feb, 2023
Like Article
Save Article
Similar Reads
Related Tutorials