Python 有没有一种更快的方法可以在不使用for循环的情况下创建空数组的元素数组
我想创建一个元素数组。我可以使用循环来完成,但我想知道是否有其他方法,比如Python 有没有一种更快的方法可以在不使用for循环的情况下创建空数组的元素数组,python,arrays,python-3.x,numpy,for-loop,Python,Arrays,Python 3.x,Numpy,For Loop,我想创建一个元素数组。我可以使用循环来完成,但我想知道是否有其他方法,比如numpy函数或其他方法可以在更短的时间内完成这项工作 这就是我想做的: def no_循环(y): mat=[] 对于范围(5012)内的i: 材料附加(y[i]) 乐趣=功能(mat) 还钱 y数组为空。数组的元素是scipy将要求解的方程组的解。 我想将for循环更改得更快。如果您想要一个特定大小的新数组,并且想忽略示例代码中非常混乱的y,可以执行以下操作: def no_loops(): # Create
numpy
函数或其他方法可以在更短的时间内完成这项工作
这就是我想做的:
def no_循环(y):
mat=[]
对于范围(5012)内的i:
材料附加(y[i])
乐趣=功能(mat)
还钱
y数组为空。数组的元素是scipy将要求解的方程组的解。
我想将for循环更改得更快。如果您想要一个特定大小的新数组,并且想忽略示例代码中非常混乱的
y
,可以执行以下操作:
def no_loops():
# Create an array of length 5012, all elements of which are zero.
return funcion_a(numpy.zeros(5012))
你也可以在这个例子中使用,但我更喜欢的是决定论
如果要在y
中复制数据,可以使用numpy.array
显式复制:
def no_loops(y):
return funcion_a(numpy.array(y[:5012]))
如果需要支持
numpy.array
的子类,还可以使用numpy.asanyarray
进行研究。请参阅:如果您想要一个特定大小的新数组,并且想要忽略示例代码中非常混乱的y
,可以执行以下操作:
def no_loops():
# Create an array of length 5012, all elements of which are zero.
return funcion_a(numpy.zeros(5012))
你也可以在这个例子中使用,但我更喜欢的是决定论
如果要在y
中复制数据,可以使用numpy.array
显式复制:
def no_loops(y):
return funcion_a(numpy.array(y[:5012]))
如果需要支持
numpy.array
的子类,还可以使用numpy.asanyarray
进行研究。请参阅:y数组为空-在这种情况下,y[i]
如何工作?看起来不像是工作代码,循环只是从scipy optimize复制了一个y
根,需要一个空数组来初始化并找到非线性方程组的解。y不存在,我所要做的就是给出另一个函数中已有值的索引并求解它们。y数组是空的-在这种情况下,y[i]
是如何工作的?看起来不像是工作代码,循环只是从scipy Optimization中复制了一个y
根,需要一个空数组来拟合并找到非线性方程组的解。y不存在,我只想给出另一个函数中已有值的索引并解算它们。