我正在尝试创建一个带有空格的格网,其工作原理与带有0的格网相同
网格中的0与我的代码无关。我可以用1和2或其他元素组成一个网格,只要我修改一些期望为0的元素,代码的主体仍然可以工作。这是我现在的代码:
import numpy as np
def make_grid():
board = np.zeros((5,7))
return board
grid = make_grid()
print(grid)
这是我得到的:
[[0. 0. 0. 0. 0. 0. 0.]
[0. 0. 0. 0. 0. 0. 0.]
[0. 0. 0. 0. 0. 0. 0.]
[0. 0. 0. 0. 0. 0. 0.]
[0. 0. 0. 0. 0. 0. 0.]]
这就是我想要的
[[ . . . . . . .]
[ . . . . . . .]
[ . . . . . . .]
[ . . . . . . .]
[ . . . . . . .]]
我还有这个功能:
def location(grid, col):
return grid[4][col] == 0
什么我改变0到一旦我实现你的代码像以前一样,它是检查列是否满了,但如果网格是空格,我不能只是做一个““或点击空格键可以我,以取代0.
@Hanna代码这样做:
[[' ' ' ' ' ' ' ' ' ' ' ' ' ']
[' ' ' ' ' ' ' ' ' ' ' ' ' ']
[' ' ' ' ' ' ' ' ' ' ' ' ' ']
[' ' ' ' ' ' ' ' ' ' ' ' ' ']
[' ' ' ' ' ' ' ' ' ' ' ' ' ']
[' ' ' ' ' ' ' ' ' ' ' ' ' ']]
我能做这个吗:
[[' '' '' '' '' '' '' ']
[' '' '' '' '' '' '' ']
[' '' '' '' '' '' '' ']
[' '' '' '' '' '' '' ']
[' '' '' '' '' '' '' ']
[' '' '' '' '' '' '' ']]
2条答案
按热度按时间0kjbasz61#
如果你想在屏幕上得到一个带有点和空格而没有引号的输出,试着定义你自己的打印函数:)
j9per5c42#
要创建一个由空格而不是零组成的网格,只需将调用np.zeros替换为调用np.empty,并传入所需的网格形状作为参数。np.empty函数创建一个具有未初始化值的数组,因此默认情况下数组的元素将是空格。以下是修改make_grid函数以创建一个由空格组成的网格的方法:
这将打印以下网格:
要修改location函数以使用空格网格,只需更改比较运算符以检查元素是否等于空格字符而不是零。以下是修改location函数的方法:
如果指定位置的元素是空格,则返回True,否则返回False。
请记住,使用空间网格不能处理某些需要数值的运算,如算术或统计函数。在这些情况下,您可能需要在执行运算之前将网格转换为数值格式。