How to use factorial() Function in Python with Example?

In Python, there isn't a built-in `factorial()` function directly available in the base language, but you can find it in the `math` module. Here's how you can use it:

Using the `math.factorial()` Function

The `math.factorial()` function computes the factorial of a given non-negative integer. Syntax
import math
result = math.factorial(x)
- x: A non-negative integer whose factorial is to be computed.
Example
import math
# Calculate the factorial of 5
result = math.factorial(5)
print("Factorial of 5 is:", result)
Output
Factorial of 5 is: 120
Explanation - The factorial of a number `n` is the product of all positive integers less than or equal to `n`. It is denoted by `n!`. - In the example, `5! = 5 × 4 × 3 × 2 × 1 = 120`. - The `math.factorial()` function efficiently calculates this for you.

Custom Implementation of Factorial

If you want to write your own factorial function without using the `math` module, you can do it using recursion or iteration. Example (Using Iteration)
def factorial(n):
if n < 0:
return "Factorial is not defined for negative numbers"
result = 1
for i in range(1, n + 1):
result *= i
return result

# Calculate the factorial of 5
result = factorial(5)
print("Factorial of 5 is:", result)
Example (Using Recursion)
def factorial(n):
if n < 0:
return "Factorial is not defined for negative numbers"
if n == 0 or n == 1:
return 1
return n * factorial(n - 1)
# Calculate the factorial of 5
result = factorial(5)
print("Factorial of 5 is:", result)
Both of these examples will also produce the output:
Factorial of 5 is: 120
These implementations demonstrate different approaches to calculating the factorial of a number in Python.