输入n,构建n以内所有完数数组

Python输入n,构建n以内所有完数数组,
Python输入n,构建n以内所有完数数组,
Python输入n,构建n以内所有完数数组

def find_factors(num):
    factors = []
    for i in range(1, num):
        if num % i == 0:
            factors.append(i)
    return factors


def find_perfect_numbers(n):
    perfect_numbers = []
    for num in range(2, n+1):
        factors = find_factors(num)
        if sum(factors) == num:
            perfect_numbers.append(num)
    return perfect_numbers



n = int(input("输入n "))
perfect_numbers = find_perfect_numbers(n)
print(perfect_numbers)

#如果一个数恰好等于它的真因子之和,则称该数为“完全数
n=int(input('输入n'))
def perfect(n):
    result = []
    for i in range(2,n):
        temp_list = []
        for i1 in range(1,i):
            if i%i1 == 0 :
                temp_list.append(i1)
        if sum(temp_list) == i :
            result.append(i)
        # print(i,sum(temp_list))
    return result
result=perfect(n)
print('-----------')
print('n以内完数为',result)

img