在一个数学运算之后,在一个列表中同时添加两个数据项

2024-04-25 13:31:13 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图创建一个函数,输出一个数的除数/因子。你知道吗

def divisors(number):
    limit = int(math.sqrt(number) + 1)
    divisor_list = [x for x in range(1, limit + 1) if number % x == 0]
    return divisor_list

如您所见,列表理解允许我只输出两个除数中的一个。x代替x,数字/x

有没有一种方法可以在不嵌套列表的情况下同时将列表中的两个值相加?你知道吗


Tags: 函数innumber列表fordefmathsqrt
1条回答
网友
1楼 · 发布于 2024-04-25 13:31:13

您可以创建一个列表:

[[x, number / x] for x in range(1, limit + 1) if number % x == 0]

或者,如果您不想要列表列表,则必须使用以下内容:

divisor_list = []
for x in range(1, limit + 1):
    if number % x == 0:
        divisor_list+=([x, number / x])

相关问题 更多 >