小编典典

python中有数学nCr函数吗?

all

我正在寻找在 python 中内置的数学库是否是 nCr (n Choose r) 函数:

在此处输入图像描述

我知道这可以编程,但我想我会先检查它是否已经内置。


阅读 78

收藏
2022-05-16

共1个答案

小编典典

以下程序nCr以有效的方式计算(与计算阶乘等相比)

import operator as op
from functools import reduce

def ncr(n, r):
    r = min(r, n-r)
    numer = reduce(op.mul, range(n, n-r, -1), 1)
    denom = reduce(op.mul, range(1, r+1), 1)
    return numer // denom  # or / in Python 2

从 Python 3.8 开始,二项式系数在标准库中可用math.comb

>>> from math import comb
>>> comb(10,3)
120
2022-05-16