Esecuzionepython + numpy: perché numpy.log genera un errore di attributo se il suo operando è troppo grande?
np.log(math.factorial(21))
genera AttributeError: log
. Perché? Potrei immaginare un ValueError
, o una sorta di UseYourHighSchoolMathsError
, ma perché l'errore di attributo?
Suppongo che NumPy prima cerchi di convertire l'argomento in uno dei suoi tipi scalari e quindi tenta di accedere ad un attributo specifico di NumPy. 'math.factorial (21)' elimina la dimensione di 'numpy.uint64', quindi non può essere convertito in uno scalare NumPy. Ovviamente NumPy * dovrebbe * lanciare un 'Errore di Valore'! –
Vedere anche [AttributeError in python/numpy quando si costruisce la funzione per determinati valori] (/ questions/18833639/attributeerror-in-python-numpy-when-constructing-function-per-certain-values) – tripleee