python - 获取给定整数的整个因子对列表的最简单方法是什么?

标签 python math

获取给定整数的整因子对列表的最简单方法是什么?

例如:f(20) 将返回 [(1,20), (2,10), (4,5)]

最佳答案

def f(value):
    factors = []
    for i in range(1, int(value**0.5)+1):
        if value % i == 0:
            factors.append((i, value / i))
    return factors

或者使用列表理解同样的事情:

def f(val):
    return [(i, val / i) for i in range(1, int(val**0.5)+1) if val % i == 0]

关于python - 获取给定整数的整个因子对列表的最简单方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5504848/

相关文章:

python - Socket收不到数据?客户端是使用 Boost.asyio 库编写的。服务器是用python写的

python - python中有没有任何方法可以用字符串替换数据框中的nan而不影响空白单元格

php - 通过php将参数传递给python脚本

algorithm - 在未加权图中找到最小顶点数

python - 为什么我不能用单行条件来中断?

python - Py2Exe 错误 : error: [Errno 2] No such file or directory: run-py3. 5-win32.exe'

python - Matlab 或 Octave 怎么会这么快?

javascript - 在 Javascript 中对范围内的每个元素求和

python - 欧拉计划数 338

c - 按位进位应用