我有以下代碼:NumPy的錯誤:在功率遇到無效值
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: invalid value encountered in power 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。
:代碼運行fine.Maybe你做了某事其他導致錯誤? – George 2012-02-04 12:17:11
它會在你的系統上運行'size = 1000'嗎?那麼這是一個數據類型問題 - 考慮在'arange()'中設置'dtype'參數。 – krlmlr 2012-02-04 12:30:01