list - 在给定的numpy矩阵中查找等于零的元素的索引
问题描述
我正在尝试使用 numpy 作为 tictactoe 游戏问题的一部分在 3*3 整数矩阵中查找非零元素的索引。我意识到 np.where 对于这种情况是一个不错的选择并尝试了它,我得到的输出看起来仍然不正确。你能帮我编码这部分吗?我在下面给出了我的部分代码。
输入:s,一个 3*3 维的整数矩阵示例:
输出:m,可能的下一步移动列表,其中每个下一步移动是一个 (r,c) 元组,其中 r 表示行号,c 表示列号。
例子:
[代码]
m = np.where(s==0)
解决方案
这是一个快速的解决方案:
import numpy as np
s = np.matrix('0, 0, 0; 0, 1, 0; 0, 0, 0')
m = np.where(s==0)
m = list(zip(m[0], m[1]))
print(m)
s
是输入矩阵,你可以看到中间的正方形被取走,然后我们np.where()
就像你做的那样使用,它产生两个数组,然后使用zip()
将它们组合成元组list()
并将输出转换为有效移动的元组列表.
推荐阅读
- linux - 从文件夹中挑选最新的文件
- java - Spring Boot GraphQL 无法加载架构
- python - 对与正则表达式模式不匹配的字符串的所有部分进行操作的函数
- css - 为“指针”使用自定义光标
- android - WEAR 兼容哪些 Android 版本
- c# - 为什么我的 MSTest 项目仅在“Debug”d 而不是“Run”d 时捕获此异常?
- excel - 在表格中获取重心
- html - 链接缩略图是网站的哪一部分?
- javascript - 在 react-native 中使键盘显示在自定义视图下方
- javascript - 如何在 THREE.js 中克隆 Line 对象的网格?