Это не вопрос отладки. Однако я потратил много времени, пытаясь выяснить, почему numpy.log(factorial(n))
отказывается принимать любое значение, где n больше 20. Это выдает ошибку атрибута: 'int' object has no attribute 'log'
и ошибку типа: loop of ufunc does not support argument 0 of type int which has no callable log method
всякий раз, когда n было больше 20.
Я решил тогда использовать math.log(factorial(n))
, и, к моему удивлению, все работало как ожидалось.
Мне было интересно, имел ли кто-нибудь опыт работы с numpy или знает больше о различных математических / numpy функциях, которые могут объяснить эту ошибку.
Вот пример того, где я использовал функцию журнала:
math.log(math.factorial(n))
* Правка для удаления моего оператора печати, который я использовал для проверки результатов