现有数组arr=np.array([1,2,3,4,5,6,7,8,9]),使用np.where或者是布尔索引知识【旧值=新值】替换掉arr中的所有奇数,其他数组不变
时间: 2023-09-30 08:09:00 浏览: 142
将数组中相同的数删掉,剩余的数从小到大排序
可以使用布尔索引来替换掉arr中的所有奇数,代码如下:
```
import numpy as np
arr = np.array([1,2,3,4,5,6,7,8,9])
arr[arr % 2 == 1] = 0
print(arr)
```
输出结果为:
```
[0 2 0 4 0 6 0 8 0]
```
其中,`arr % 2 == 1`会生成一个布尔数组,其中为True的代表是奇数,然后将这个布尔数组作为索引传入到`arr`中即可替换掉对应位置的元素。
阅读全文