分割数组Python的元素

Kat*_*tey 2 python arrays loops for-loop python-3.x

您好,我是一名初学者,我知道必须有一种简单的方法来执行此操作,但是由于某种原因找不到答案。我有两个数组,只想将每个元素除以另一个数组中的元素即可。例如

a= np.array([2,4,6,8,10,12])
b=np.array([2,1,2,1,2,1])
so that the result is (1,4,3,8,5,12)....
Run Code Online (Sandbox Code Playgroud)

我试图通过for循环来做到这一点:

for i in range(a):
    c = a[i]/b[i]
Run Code Online (Sandbox Code Playgroud)

但它不起作用,并显示错误“ TypeError:只有具有一个元素的整数数组才能转换为索引”

wpe*_*rcy 5

您可以自己对数组进行分割(a/b

In [1]: import numpy as np

In [2]: a = np.array([2,4,6,8,10,12])

In [3]: b = np.array([2,1,2,1,2,1])

In [4]: a/b
Out[4]: array([ 1,  4,  3,  8,  5, 12])
Run Code Online (Sandbox Code Playgroud)

发生这种情况是因为numpy重载的__div__方法ndarray来分割数组的元素并输出结果数组(该实现大部分是C代码,因此很难将您链接到发生这种情况的位置)