Python Program to Find Factorial of Number Using Recursion

In this program, you'll learn to find the factorial of a number using recursive function.
Python factorial

To understand this example, you should have the knowledge of following Python programming topics:

The factorial of a number is the product of all the integers from 1 to that number.

For example, the factorial of 6 (denoted as 6!) is 1*2*3*4*5*6 = 720. Factorial is not defined for negative numbers and the factorial of zero is one, 0! = 1.

Source Code

# Python program to find the factorial of a number using recursion

def recur_factorial(n):
   """Function to return the factorial
   of a number using recursion"""
   if n == 1:
       return n
   else:
       return n*recur_factorial(n-1)

# Change this value for a different result
num = 7

# uncomment to take input from the user
#num = int(input("Enter a number: "))

# check is the number is negative
if num < 0:
   print("Sorry, factorial does not exist for negative numbers")
elif num == 0:
   print("The factorial of 0 is 1")
else:
   print("The factorial of",num,"is",recur_factorial(num))

Output

The factorial of 7 is 5040

Note: To test the program, change the value of num.

Here, the number is stored in num and use recursive function recur_factorial() to compute the product up to that number.