# Python Program for checking Perfect Number or Not

In this tutorial, we will discuss a python program for checking Perfect Number or Not.

Before going to the program first, let us understand what is a *Perfect Number.*

**Perfect Number:**

A perfect number is a positive integer that is equal to the sum of its proper divisors, excluding itself.

For example, 6, 28, and 496 are perfect numbers.

**Related: **Python Program for checking if a number is prime or not

#### Program code for checking if a number is perfect or not in Python

# Perfect Number Checker in Python def is_perfect(num): if num <= 1: return False sum_of_divisors = sum([i for i in range(1, num) if num % i == 0]) return sum_of_divisors == num number = int(input("Enter a number: ")) if is_perfect(number): print(f"{number} is a perfect number.") else: print(f"{number} is not a perfect number.")

#### Explanation

**Function Definition**: The`is_perfect`

function takes an integer`num`

as input and returns`True`

if the number is perfect, and`False`

otherwise.**Sum of Divisors**: The function calculates the sum of all divisors of the number (excluding itself) using a list comprehension.**Main Program**: The program prompts the user to enter a number and then checks if it is perfect using the`is_perfect`

function.

#### Output

- When you run the above program, it will prompt you to enter a number.
- After entering the number, it will check whether the number is perfect or not and print the result.

#### Conclusion

- In this tutorial, we learned how to check if a given number is a perfect number using a python program.
- Understanding this concept is essential for solving various mathematical problems and competitive programming challenges.
- Practice this example to enhance your programming skills and understanding of perfect numbers.