Correrpython + numpy: ¿por qué numpy.log arroja un error de atributo si su operando es demasiado grande?
np.log(math.factorial(21))
lanza una AttributeError: log
. ¿Porqué es eso? Me podría imaginar un ValueError
, o algún tipo de UseYourHighSchoolMathsError
, pero ¿por qué el error de atributo?
Supongo que NumPy primero intenta convertir el argumento a uno de sus tipos escalares y luego intenta acceder a algún atributo específico de NumPy. 'math.factorial (21)' excede el tamaño de 'numpy.uint64', por lo que no se puede convertir a un escalar NumPy. ¡Por supuesto NumPy * debería * lanzar un 'ValueError'! –
Vea también [AttributeError en python/numpy al construir la función para ciertos valores] (/ questions/18833639/attributeerror-in-python-numpy-when-constructing-function-for-certain-values) – tripleee