1问题
如何利用Python打印出1000以内的完全数。
2方法
遍历1000以内的数并且定义一个空列表;
找出一个数的所有除数并且存入列表;
判断其除它本身以外其他除数之和是否等于它本身
代码清单 1
for a in range(2,1000): s=[] #定义一个空列表 for i in range(1,a): if a % i == 0: s.append(i) #将除数存入列表 if sum(s) == a: 判断所有除数之和是否等于它本身 print(a) |
3结语
针对打印1000以内完全数的问题问题,提出循环和条件判断方法,通过本次实验,证明该方法是有效的,本文的方法还可以进行优化,在生成列表时还可以使用列表推导式,使代码看起来更简洁。未来希望可以探索更多关于解决此类的方法。