У меня следующий код:
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)
При запуске я получаю сообщение об ошибке:
D: \ Work \ programming \ python \ test_1 \ src \ test1_numpy.py: 6: RuntimeWarning: обнаружено недопустимое значение в мощности b = numpy.arange (n) ** 3
Обратите внимание, что следующая функция numpyless работает нормально:
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
Думаю, это происходит из-за того, что я пытаюсь возвести большое число в степень тройки. Что я могу делать, кроме работы с числами с плавающей запятой?
Я работаю с Python 3.2.