完数是每个对于它本身可以被求余为0的数字,例如 6 = 1 + 2 + 3
# 完数
for i in range(1, 1001): # 1000以内的完数
s = 0 # 用于判断是否是完数,每次循环重新回归清零
for j in range(1, i // 2 + 1): # i//2+1是直接剔除相同的数字,防止数字重复,只拿出一半,自己体会
if i % j == 0: # 因子相同
s += j # 进行相加
else:
continue
if s == i: # 结束后进行判断,因子相加是否为之前那个数字
print(s)