Ho il seguente codice:errore Numpy: valore non valido incontrato nel potere
import numpy
def numpysum(n):
a = numpy.arange(n) ** 2
b = numpy.arange(n) ** 3
c = a + b
return c
size = 3000
c = numpysum(size)
Durante l'esecuzione, ottengo l'errore:
D:\Work\programming\python\test_1\src\test1_numpy.py:6: RuntimeWarning: invalid value encountered in power b = numpy.arange(n) ** 3
Si noti che la seguente funzione numpyless funziona bene:
def pythonsum(n):
a = list(range(n))
b = list(range(n))
c = []
for i in range(len(a)):
a[i] = i ** 2
b[i] = i ** 3
c.append(a[i] + b[i])
return c
Immagino che accada perché provo a generare un numero elevato per il terzo. Cosa posso fare, oltre a lavorare con i numeri in virgola mobile?
Sto lavorando con Python 3.2.
: Il codice viene eseguito fine.Maybe hai fatto qlc altra cosa che causa l'errore? – George
Funzionerà con 'size = 1000' sul tuo sistema? Quindi si tratta di un problema relativo al tipo di dati: prendere in considerazione l'impostazione del parametro 'dtype' in' arange() '. – krlmlr