python求一个数的因子找出10000之内的所有完数

一个数如果恰好等于它的因子之和,这个数就称为"完数"。例如,6的因子为1、2、3,而6=1+2+3,因此6是完数。编程,找出10000之内的所有完数,将其存入一个列表里

python列表解析 双重for循环+条件判断

复制代码
# n=6 求因子
# for i in range(1, n):
#     if n % i == 0:
#         print(i)
python 复制代码
for i in range(2,10001):
    sum = 0
    for j in range(1,i):
        if i%j==0:
            # print(i)
            sum+=j
    if (sum==i):
        list1.append(i)
print(list1)

尝试以列表解析的方式生成结果列表

判断写成一个函数在列表调用

python 复制代码
def wdyinzi(i):
    sum=0
    for j in range(1, i):
        if i % j == 0:
            # print(i)
            sum += j
    if(sum==i):
        return  i
list2=[i for i in range(2,10001) if wdyinzi(i)]
print(list2)
相关推荐
lfwh1 分钟前
Java 中基于 DBSCAN 算法的车辆交汇点计算实现详解
java·开发语言·算法
数据大魔方4 分钟前
【期货量化入门】期权交易入门:从零开始学期权量化(TqSdk完整教程)
数据库·python·mysql·算法·区块链·程序员创富
星河耀银海5 分钟前
C++面向对象编程:从基础到实战
开发语言·c++
HUST12 分钟前
C语言第十一讲: 深入理解指针(1)
c语言·开发语言
Ccjf酷儿22 分钟前
C++语言程序设计 (郑莉)第三章 函数
开发语言·c++
@zulnger24 分钟前
python 学习笔记(文件和目录操作)
笔记·python·学习
zuozewei24 分钟前
零基础 | 基于LangChain的角色扮演聊天机器人实现
python·langchain·机器人
ytttr87334 分钟前
基于人工蜂群算法(ABC)的MATLAB数值计算求解框架
开发语言·算法·matlab
Dxy123931021637 分钟前
Python如何使用DrissionPage做自动化:简单入门指南
开发语言·python·自动化
珂朵莉MM38 分钟前
2025年睿抗机器人开发者大赛CAIP-编程技能赛-高职组(国赛)解题报告 | 珂学家
java·开发语言·人工智能·算法·机器人