python中找出某一个范围内的范围内的完数

python

找出某一个范围内的范围内的完数,完数:如果一个数等于它的因子之和,则称他是完数。
比如:6的因子是1,2,3,6=1+2+3,则6是完数

start_num = 1
end_num = 1000
for num in range(start_num, end_num):
    yinzi_list = [] #num 对应的因子列表
    for i in range(1,num):
        if num%i ==0 :
            yinzi_list.append(i)
    sum = 0
    for yinzi in yinzi_list:
        sum = sum + yinzi
    if sum == num:
        print("完数:",num)#找到完数

 

谢谢大佬,解决了(#^.^#)