Python判断一个数是否是完数
时间: 2023-11-30 09:04:22 浏览: 132
python找出完数的方法
可以使用以下代码来判断一个数是否是完数:
```python
def is_perfect_number(num):
divisors = []
for i in range(1, num):
if num % i == 0:
divisors.append(i)
return sum(divisors) == num
# 测试
print(is_perfect_number(6)) # True
print(is_perfect_number(28)) # True
print(is_perfect_number(496)) # True
print(is_perfect_number(8128)) # True
print(is_perfect_number(10)) # False
```
在这个函数中,我们首先定义了一个空列表 `divisors`,然后使用 `for` 循环遍历从 1 到 `num-1` 的所有数,如果该数是 `num` 的因子,就将其加入到 `divisors` 列表中。最后,我们检查 `divisors` 中所有元素的和是否等于 `num`,如果是,那么 `num` 就是一个完数。
阅读全文