Python math Module

The math module in Python provides access to mathematical functions defined by the C standard. It includes functions for basic arithmetic, trigonometry, logarithms, and more, as well as constants like pi and e.

Table of Contents

  1. Introduction
  2. Constants
  3. Number-theoretic and Representation Functions
    • ceil
    • copysign
    • fabs
    • factorial
    • floor
    • fmod
    • frexp
    • fsum
    • gcd
    • isfinite
    • isinf
    • isnan
    • ldexp
    • modf
    • trunc
  4. Power and Logarithmic Functions
    • exp
    • expm1
    • log
    • log1p
    • log2
    • log10
    • pow
    • sqrt
  5. Trigonometric Functions
    • acos
    • asin
    • atan
    • atan2
    • cos
    • sin
    • tan
  6. Angular Conversion
    • degrees
    • radians
  7. Hyperbolic Functions
    • acosh
    • asinh
    • atanh
    • cosh
    • sinh
    • tanh
  8. Special Functions
    • erf
    • erfc
    • gamma
    • lgamma
  9. Examples
  10. Real-World Use Case
  11. Conclusion
  12. References

Introduction

The math module provides a comprehensive set of mathematical functions and constants. These functions are optimized for performance and provide a reliable foundation for numerical calculations.

Constants

pi

The mathematical constant π.

import math

print(math.pi)  # 3.141592653589793

e

The mathematical constant e.

print(math.e)  # 2.718281828459045

tau

The mathematical constant τ, which is 2π.

print(math.tau)  # 6.283185307179586

inf

A floating-point positive infinity.

print(math.inf)  # inf

nan

A floating-point “not a number” value.

print(math.nan)  # nan

Number-theoretic and Representation Functions

ceil

Returns the ceiling of x, the smallest integer greater than or equal to x.

print(math.ceil(4.2))  # 5

copysign

Returns a float with the magnitude of x but the sign of y.

print(math.copysign(3, -1))  # -3.0

fabs

Returns the absolute value of x.

print(math.fabs(-5.3))  # 5.3

factorial

Returns the factorial of x, an exact integer.

print(math.factorial(5))  # 120

floor

Returns the floor of x, the largest integer less than or equal to x.

print(math.floor(4.8))  # 4

fmod

Returns the remainder of x / y.

print(math.fmod(7, 3))  # 1.0

frexp

Returns the mantissa and exponent of x as the pair (m, e).

print(math.frexp(8))  # (0.5, 4)

fsum

Returns an accurate floating-point sum of values in the iterable.

print(math.fsum([0.1, 0.2, 0.3]))  # 0.6

gcd

Returns the greatest common divisor of the integers a and b.

print(math.gcd(8, 12))  # 4

isfinite

Returns True if x is neither an infinity nor a NaN, and False otherwise.

print(math.isfinite(5))  # True
print(math.isfinite(math.inf))  # False

isinf

Returns True if x is a positive or negative infinity, and False otherwise.

print(math.isinf(math.inf))  # True
print(math.isinf(5))  # False

isnan

Returns True if x is a NaN (not a number), and False otherwise.

print(math.isnan(math.nan))  # True
print(math.isnan(5))  # False

ldexp

Returns x * (2**i). This is essentially the inverse of frexp.

print(math.ldexp(0.5, 4))  # 8.0

modf

Returns the fractional and integer parts of x.

print(math.modf(4.5))  # (0.5, 4.0)

trunc

Returns the truncated integer value of x.

print(math.trunc(4.7))  # 4

Power and Logarithmic Functions

exp

Returns e raised to the power of x.

print(math.exp(2))  # 7.38905609893065

expm1

Returns e raised to the power of x, minus 1.

print(math.expm1(1))  # 1.718281828459045

log

Returns the natural logarithm of x.

print(math.log(2.718281828459045))  # 1.0

log1p

Returns the natural logarithm of 1 + x.

print(math.log1p(1))  # 0.6931471805599453

log2

Returns the base-2 logarithm of x.

print(math.log2(8))  # 3.0

log10

Returns the base-10 logarithm of x.

print(math.log10(100))  # 2.0

pow

Returns x raised to the power of y.

print(math.pow(2, 3))  # 8.0

sqrt

Returns the square root of x.

print(math.sqrt(16))  # 4.0

Trigonometric Functions

acos

Returns the arc cosine of x, in radians.

print(math.acos(1))  # 0.0

asin

Returns the arc sine of x, in radians.

print(math.asin(0))  # 0.0

atan

Returns the arc tangent of x, in radians.

print(math.atan(1))  # 0.7853981633974483

atan2

Returns atan(y / x), in radians.

print(math.atan2(1, 1))  # 0.7853981633974483

cos

Returns the cosine of x, in radians.

print(math.cos(math.pi / 4))  # 0.7071067811865476

sin

Returns the sine of x, in radians.

print(math.sin(math.pi / 2))  # 1.0

tan

Returns the tangent of x, in radians.

print(math.tan(math.pi / 4))  # 1.0

Angular Conversion

degrees

Converts angle x from radians to degrees.

print(math.degrees(math.pi))  # 180.0

radians

Converts angle x from degrees to radians.

print(math.radians(180))  # 3.141592653589793

Hyperbolic Functions

acosh

Returns the inverse hyperbolic cosine of x.

print(math.acosh(1))  # 0.0

asinh

Returns the inverse hyperbolic sine of x.

print(math.asinh(0))  # 0.0

atanh

Returns the inverse hyperbolic tangent of x.

print(math.atanh(0))  # 0.0

cosh

Returns the hyperbolic cosine of x.

print(math.cosh(0))  # 1.0

sinh

Returns the hyperbolic sine of x.

print(math.sinh(0))  # 0.0

tanh

Returns the hyperbolic tangent of x.

print(math.tanh(0))  # 0.0

Special Functions

erf

Returns the error function of x.

print(math.erf(0))  # 0.0

erfc

Returns the complementary error function of

x.

print(math.erfc(0))  # 1.0

gamma

Returns the Gamma function of x.

print(math.gamma(5))  # 24.0

lgamma

Returns the natural logarithm of the absolute value of the Gamma function of x.

print(math.lgamma(5))  # 3.1780538303479458

Examples

Calculating the Hypotenuse

Calculate the length of the hypotenuse of a right-angled triangle.

import math

def hypotenuse(a, b):
    return math.sqrt(a**2 + b**2)

print(hypotenuse(3, 4))  # 5.0

Area of a Circle

Calculate the area of a circle given its radius.

import math

def area_of_circle(radius):
    return math.pi * radius ** 2

print(area_of_circle(5))  # 78.53981633974483

Real-World Use Case

Compound Interest Calculation

Calculate the compound interest on an investment.

import math

def compound_interest(principal, rate, times_compounded, years):
    return principal * (1 + rate / times_compounded) ** (times_compounded * years)

principal = 1000
rate = 0.05
times_compounded = 4
years = 10

print(compound_interest(principal, rate, times_compounded, years))  # 1647.00949769028

Conclusion

The math module in Python provides a wide range of mathematical functions and constants that are essential for various calculations and scientific computing. By utilizing these functions, you can perform complex mathematical operations with ease and precision.

References

Leave a Comment

Your email address will not be published. Required fields are marked *

Scroll to Top