将array矩阵中所有是1的数据,读出来是第几行第几列。例如第1行第3列是1,则读出来(1,3),然后将所有读出来的形成一个列表,例如列表s=[(1,3),{2,4)]。用python语言写出代码
时间: 2024-03-01 16:51:31 浏览: 63
可以使用NumPy库中的argwhere()函数来实现该功能。具体代码如下:
```python
import numpy as np
# 创建一个示例矩阵
matrix = np.array([[0, 1, 0], [1, 0, 1], [0, 0, 1]])
# 使用argwhere()函数获取所有值为1的元素的索引
indices = np.argwhere(matrix == 1)
# 将索引转换为元组,并形成一个列表
s = [tuple(index) for index in indices]
print(s)
```
运行结果为:
```
[(0, 1), (1, 0), (1, 2), (2, 2)]
```
在代码中,首先创建了一个示例矩阵matrix。然后,使用argwhere()函数获取所有值为1的元素的索引,最后将索引转换为元组,并形成一个列表s。
阅读全文