def number(n):
list = []
for i in range(1,n + 1):
if n % i == 0:
list.append(i)
return list
k = int(input("请输入k值:"))
print(number(k)) #(其实到这里就已经很简单了,只需要看list[]的列表元素和的一般是不是等于该数就行,也就是n值)
from functools import reduc #(可是我不会求,下面的方法是从CSDN上面借鉴别人的)
def sum_list(lt):
lt1 = []
for i in range(len(lt)):
if lt[i] not in lt1:
lt1.append(lt[i])
return reduce(lambda x,y:x+y,lt1)
if sum_list(number(k)) == 2 * k:
print("此数值是完全数")
else:
print("此数值不是完全数")