如何替换矩阵中的条目?

问题描述 投票:0回答:1
row_len = 5
col_len = 5

matrix = []

#Fills the matrix with #'s
def fill_maze():
    row = []
    for i in range(row_len):
        row.append("#")
    for i in range (col_len):
        matrix.append(row)

# Draws the maze to the screen
def draw():
    for i in range(col_len):
        row = matrix[i]
        a = ("")
        for i in row:
            a += i
        print(a)

#Swaps out the character in the given coordinate with @
def dig(x, y):
    row = matrix[y]
    row[x] = "@"
    matrix[y] = row

create_maze()
dig(2, 3)
print("")
draw()

我正在制作这个文本迷宫游戏,其中角色必须穿过迷宫,并且我将迷宫存储为矩阵。目前,我在使用此

dig(x, y)
功能更改迷宫的某些部分时遇到麻烦。

我想我已经将问题归咎于这个函数:

def dig(x, y):
    row = matrix[y]
    row[x] = "@"
    matrix[y] = row

当我运行程序时,我希望它输出:

#####
#####
#####
##@##
#####

但是它输出:

##@##
##@##
##@##
##@##
##@##

我尝试删除这部分功能:

matrix[y] = row

我也尝试过:

def dig(x, y):
    matrix[x][y] = "@"

但这给出了相同的输出。

python matrix
1个回答
0
投票

您使用两个坐标输入玩家的位置,但只使用一个。

最新问题
© www.soinside.com 2019 - 2025. All rights reserved.