Last Updated : 14 Feb, 2023
frexp() function is one of the Standard math Library function in Python. It returns mantissa and exponent as a pair (m, e) of a given value x, where mantissa m is a floating point number and e exponent is an integer value. m is a float and e is an integer such that x == m * 2**e exactly. If x is zero, returns (0.0, 0), otherwise 0.5 <= abs(m) < 1. This is used to “pick apart” the internal representation of a float in a portable way.
Syntax: math.frexp( x ) Parameters: Any valid number (positive or negative). Returns: Returns mantissa and exponent as a pair (m, e) value of a given number x. Exception: If x is not a number, function will return TypeError.
Time Complexity: O(1)
Auxiliary Space: O(1)
Code #1:
Python3
# Python3 code demonstrate frexp() function
# importing math library
import math
# calculating mantissa and
# exponent of given integer
print(math.frexp(3))
print(math.frexp(15.7))
print(math.frexp(-15))
Output:
(0.75, 2) (0.98125, 4) (-0.9375, 4)
Code #2:
Python3
# Python3 code demonstrate frexp() function
# importing math library
import math
# creating a list
lst = [15, 13.76, 17.5, 21]
# creating a tuple
tpl = (-15.85, -41.24, -11.2, 54)
# calculating mantissa and exponent
# of 1st, 3rd elements in list
print(math.frexp(lst[0]))
print(math.frexp(lst[2]))
# calculating mantissa and exponent
# of 2nd, 3rd and 4th elements in tuple
print(math.frexp(tpl[1]))
print(math.frexp(tpl[2]))
print(math.frexp(tpl[3]))
Output:
(0.9375, 4) (0.546875, 5) (-0.644375, 6) (-0.7, 4) (0.84375, 6)
Code #3: If the x parameter is not a number, frexp() function will return a TypeError.
Python3
# Python3 code demonstrates when error occurs
import math
print(math.frexp('25'))
Output:
TypeError: a float is required
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4