You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python因数列表函数需求问询:实现遍历生成输入数字的因数列表

修正Python因数列表函数factorList的问题

原代码存在两处关键错误,导致无法正确生成因数列表:

  • range语法错误:range <= num不符合Python的range函数使用规则,要遍历1到num的所有整数,需使用range(1, num+1)——因为range是左闭右开区间,结束参数设为num+1才能包含num本身。
  • 因数判断逻辑错误:判断i是否为num的因数,应该用取模运算num % i == 0(取模结果为0代表i能整除num),原代码的num / i == 0逻辑完全错误,只有num为0时该条件才会成立,根本无法筛选出因数。

修正后的代码如下:

def factorList(num):
    listOfFactors = []
    for i in range(1, num + 1):
        if num % i == 0:
            listOfFactors.append(i)
    print(listOfFactors)  

factorList(36)  # 执行后输出: [1, 2, 3, 4, 6, 9, 12, 18, 36]

内容的提问来源于stack exchange,提问作者Queest

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.19 06:55:23