#scipy #factorial
#scipy #факториал
Вопрос:
from scipy.special import factorial2
print(factorial2(-1))
В документации говорится, что приведенный выше код должен возвращать 0, но для меня он возвращает 1. Фактически, он возвращает что-то для всех отрицательных чисел. Это ошибка? Я даже не могу понять этот результат, принимая во внимание аналитическое продолжение факториальной функции, т.Е. Учитывая различные расширения факториальной функции до отрицательных значений.
Документация: https://docs.scipy.org/doc/scipy/reference/generated/scipy.special.factorial2.html
Python 3.7.6
Scipy 1.4.1
Комментарии:
1. посмотрите на источник. Поведение при
exact
значении True отличается.2. Я получаю такое же странное поведение, когда exact имеет значение True, однако я еще не смотрел на источник, поэтому я посмотрю
3. Некоторые тесты показывают, что он использует формулу из википедии для
-1
и ноль для всех других отрицательных целых чисел. В общем, факториал и двойной факториал четко определены только для положительных чисел (и нуля).4. Перечитывая код, я вижу, что он
-1
отличается от других негативов.1
for-1
является преднамеренным. Документы не соответствуют коду.