Python 如何使用numpy数组执行以下操作

Python 如何使用numpy数组执行以下操作,python,arrays,numpy,Python,Arrays,Numpy,有没有办法使用numpy数组执行上述操作 上面代码的输出是[1,2,-1,3,-1,4]给你。首先使用创建一个空数组(比如arr)。现在使用list_2中的项目作为索引,将-1分配给arr,然后找到值不等于-1或等于0的项目,并将list_1的项目分配给它 list_1 = [1,2,3,4] list_2 = [2,4] list_index = 0 list_3 = [0]*(len(list_1)+len(list_2)) for index in range(6): if i

有没有办法使用numpy数组执行上述操作
上面代码的输出是[1,2,-1,3,-1,4]

给你。首先使用创建一个空数组(比如
arr
)。现在使用
list_2
中的项目作为索引,将-1分配给
arr
,然后找到值不等于-1或等于0的项目,并将
list_1
的项目分配给它

list_1 = [1,2,3,4]
list_2 = [2,4]
list_index = 0
list_3 = [0]*(len(list_1)+len(list_2))
for index in range(6):
      if index in list_2:
           list_3[index] = -1
      else:
           list_3[index] = list_1[list_index]
           list_index += 1
>>> list_1 = [1,2,3,4]
>>> list_2 = [2,4]
>>> arr = np.zeros(len(list_1)+len(list_2))
>>> arr[list_2] = -1
>>> arr[arr!=-1] = list_1
>>> arr
array([ 1.,  2., -1.,  3., -1.,  4.])