站长资源脚本专栏
python找出完数的方法
简介如下所示:# -*- coding: utf-8 -*-# 要求:用python方法找出1000以内的所有完数,并输出。def f(n):list = []for i in range(2, n + 1):for j in range(2, i / 2):if i % j == 0 and j
如下所示:
# -*- coding: utf-8 -*- # 要求:用python方法找出1000以内的所有完数,并输出。 def f(n): list = [] for i in range(2, n + 1): for j in range(2, i / 2): if i % j == 0 and j <= (i / j): list.append(j) list.append(i / j) if sum(list) + 1 == i: print i list = [] if __name__=="__main__": n=int(raw_input("请输入最大范围:")) f(n)
运行结果:
请输入最大范围:1000 6 28 496
总结:
sum可以直接对列表进行求和!