From: Raymond Hettinger Date: Fri, 18 Apr 2025 17:41:13 +0000 (-0500) Subject: Minor doc edit: Make multinomial() the first math example (gh-132697) X-Git-Tag: v3.14.0b1~408 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=741c6386b8615fbfb4f2e6027556751039119950;p=thirdparty%2FPython%2Fcpython.git Minor doc edit: Make multinomial() the first math example (gh-132697) --- diff --git a/Doc/library/itertools.rst b/Doc/library/itertools.rst index 438f3db60c39..00925ae920aa 100644 --- a/Doc/library/itertools.rst +++ b/Doc/library/itertools.rst @@ -1009,6 +1009,12 @@ The following recipes have a more mathematical flavor: .. testcode:: + def multinomial(*counts): + "Number of distinct arrangements of a multiset." + # Counter('abracadabra').values() → 5 2 2 1 1 + # multinomial(5, 2, 2, 1, 1) → 83160 + return prod(map(comb, accumulate(counts), counts)) + def powerset(iterable): "Subsequences of the iterable from shortest to longest." # powerset([1,2,3]) → () (1,) (2,) (3,) (1,2) (1,3) (2,3) (1,2,3) @@ -1127,12 +1133,6 @@ The following recipes have a more mathematical flavor: n -= n // prime return n - def multinomial(*counts): - "Number of distinct arrangements of a multiset." - # Counter('abracadabra').values() → 5 2 2 1 1 - # multinomial(5, 2, 2, 1, 1) → 83160 - return prod(map(comb, accumulate(counts), counts)) - .. doctest:: :hide: