Arrays 函数中的数组
试图简单地用apple numba@njit(无Python模式)来提高numba的速度,但遇到了错误,我不理解 要声明一个大小为n=100的数组,并在循环中设置索引i在范围(0100)内等于r**2+5的每个数组成员 为什么来自numba的大量错误Arrays 函数中的数组,arrays,python-3.x,numba,Arrays,Python 3.x,Numba,试图简单地用apple numba@njit(无Python模式)来提高numba的速度,但遇到了错误,我不理解 要声明一个大小为n=100的数组,并在循环中设置索引i在范围(0100)内等于r**2+5的每个数组成员 为什么来自numba的大量错误 # -*- coding: utf-8 -*- """ Spyder Editor This is a temporary script file. """ import numpy
# -*- coding: utf-8 -*-
"""
Spyder Editor
This is a temporary script file.
"""
import numpy as np
from numba import njit
n=100
r=.5
Values=np.zeros(n, dtype=np.float64)
@njit
def func(n):
for i in range(0,n):
Values[i]=r**2+5
return(Values)
print(func(n))
TypeError:无法修改只读数组(float64,1d,C)类型的值。
将数组传递给函数。始终避免使用全局数组,尤其是如果您不知道它们在Numba中是如何实现的<代码>def func(值,n):解决了问题。是的,这回答了问题@max9111谢谢!我想知道是否有一种方法可以将值批量分配给一个没有循环但在函数中包含索引的数组。例如x[ArrayIndex i]=100**(数组索引i)