факториал#
- scipy.special.факториал(n, точный=False, расширить='zero')[источник]#
Факториал числа или массива чисел.
Факториал неотрицательного целого числа n является произведением всех положительных целых чисел, меньших или равных n:
n! = n * (n - 1) * (n - 2) * ... * 1
- Параметры:
- nint или float или complex (или array_like таковых)
Входные значения для
n!. Комплексные значения требуютextend='complex'. По умолчанию возвращаемое значение дляn < 0равен 0.- точныйbool, необязательно
Если
exactустановлен в True, вычисляет ответ точно с использованием целочисленной арифметики, иначе приближенно с использованием гамма-функции (быстрее, но дает числа с плавающей точкой вместо целых). По умолчанию False.- расширитьstring, optional
Один из
'zero'или'complex'; это определяет, как значенияn<0обрабатываются - по умолчанию они равны 0, но можно выбрать комплексное расширение факториала (см. ниже).
- Возвращает:
- nfint или float или complex или ndarray
Факториал
n, как целое, вещественное или комплексное число (в зависимости отexactиextend). Массивные входные данные возвращаются как массивы.
Примечания
Для массивов с
exact=True, факториал вычисляется только один раз для наибольшего входного значения, а каждый другой результат вычисляется в процессе. Выходной dtype увеличивается доint64илиobjectесли необходимо.С
exact=Falseфакториал аппроксимируется с использованием гамма-функции (что также является определением комплексного расширения):\[n! = \Gamma(n+1)\]Примеры
>>> import numpy as np >>> from scipy.special import factorial >>> arr = np.array([3, 4, 5]) >>> factorial(arr, exact=False) array([ 6., 24., 120.]) >>> factorial(arr, exact=True) array([ 6, 24, 120]) >>> factorial(5, exact=True) 120