在Python中,要找出小于或等于给定数的所有完全数,你可以使用以下代码:
```python
def find_perfect_numbers(limit):
perfect_numbers = []
for num in range(1, limit + 1):
factors = [i for i in range(1, num) if num % i == 0]
if sum(factors) == num:
perfect_numbers.append(num)
return perfect_numbers
limit = 1000 设置查找范围
perfect_numbers = find_perfect_numbers(limit)
print("Perfect numbers within {}: {}".format(limit, perfect_numbers))
这段代码定义了一个函数`find_perfect_numbers`,它接受一个参数`limit`,表示要查找的数的上限。函数内部,我们使用列表推导式找出`num`的所有因子,并计算它们的和。如果因子的和等于`num`本身,则将`num`添加到`perfect_numbers`列表中。最后,函数返回包含所有完全数的列表。
你可以通过修改`limit`变量的值来查找不同范围内的完全数。在上面的代码中,我们查找的是1000以内的所有完全数。