这篇文章将为大家详细讲解有关python判断是否完数的方法,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

一个数如果恰好等于它的因子之和,这个数就称为“完数”。

判断一个数是否完数的代码如下:

#!/usr/bin/envpython#coding:utf-8deffactors(n):#return[iforiinrange(1,n/2+1)ifn%i==0]#如果仅仅是为了得到因数,可以用上面的#如果是配合下面完全数,最好使用下面的。因为在下面少循环一次,1肯定是任何整数的因数return[iforiinrange(2,n/2+1)ifn%i==0]#找出某个数n以内的所有完全数,即在[1,n]内(含n)defperfect(n):#从上面的factors中得到的因数列表中,少1,因此在求因数和的时候,要把1加上。return[iforiinrange(2,n+1)if(sum(factors(i))+1)==i]if__name__=="__main__":printperfect(1000)printfactors(1000)

关于python判断是否完数的方法就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。