Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/398.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 本地Jupter中的Numpy.sum()的意外返回值_Python_Numpy_Sum - Fatal编程技术网

Python 本地Jupter中的Numpy.sum()的意外返回值

Python 本地Jupter中的Numpy.sum()的意外返回值,python,numpy,sum,Python,Numpy,Sum,当运行以下代码时 当N=100000时,我得到-172414088 否则,在web python编辑器中运行它时,我会得到正确的答案 我的Jupter有任何设置错误吗 def sq(N): return np.sum(np.arange(N)**2) 非常感谢 试试这个: def sq(N): return np.sum(np.arange(N, dtype = np.int64)**2) 对于numpy默认使用的np.int32数据类型,示例中的数字太大。如果您使用np.i

当运行以下代码时 当
N=100000
时,我得到
-172414088

否则,在web python编辑器中运行它时,我会得到正确的答案

我的Jupter有任何设置错误吗

def sq(N):
    return np.sum(np.arange(N)**2)
非常感谢

试试这个:

def sq(N):
    return np.sum(np.arange(N, dtype = np.int64)**2)
对于numpy默认使用的
np.int32
数据类型,示例中的数字太大。如果您使用
np.int64
,您可以使用
N=10000000

默认的
dtype
似乎取决于系统,例如,它已经在我的系统上使用了
int64
。但是,即使将
dtype
显式设置为
int32
,我也会得到一个不同于OP所声称的总和。感谢您提供的信息,我没有意识到这一点。如果你选择
N=1000
你将得到OPs输出,我猜他只是错误地输入了一个额外的0,尝试了不同的N值和不同的数据类型,但从未得到OP的值。不过,这可能是解决问题的正确方法。