脚本专栏 
首页 > 脚本专栏 > 浏览文章

python找出完数的方法

(编辑:jimmy 日期: 2025/7/4 浏览:3 次 )

如下所示:

# -*- 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可以直接对列表进行求和!

上一篇:python简易实现任意位数的水仙花实例
下一篇:对pandas的行列名更改与数据选择详解