站长资源脚本专栏
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可以直接对列表进行求和!