Skip to content
Related Articles

Related Articles

Improve Article
Save Article
Like Article

Python math function | modf()

  • Difficulty Level : Basic
  • Last Updated : 11 Jan, 2018

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 :

 Attention geek! Strengthen your foundations with the Python Programming Foundation Course and learn the basics.  

To begin with, your interview preparations Enhance your Data Structures concepts with the Python DS Course. And to begin with your Machine Learning Journey, join the Machine Learning - Basic Level Course

modf(number) 

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 then a float number is passed, it returns a type error. 

Below is the Python3 implementation of modf() method :

Code #1




# 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 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 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 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
Recommended Articles
Page :

Start Your Coding Journey Now!