编写自己的函数来解决迷宫!
magame的Python项目详细描述
马加梅
MaGame是一个包目前涉及两个迷宫游戏:Mappy和Pac man。在游戏Mappy中,一个老鼠警察正在迷宫中寻找犯罪的猫,而在另一个游戏Pac man中,角色试图吃掉迷宫中的所有点。
使用pip
命令安装包后,可以按照以下步骤运行游戏。
第1步:从MaGame包导入游戏和迷宫
frommagameimportmappy# Import the Mappy gamefrommagameimportpacman# Import the Pac-man gamefrommagameimportmazes# Import the pre-defined mazes
变量mazes
是一个元组,包含四个表示迷宫的嵌套列表,其中:
- 迷宫壁用“1”表示。在
- 开放路径用“0”表示。在
- 地图游戏中的目标用“-1”表示。在吃豆人游戏中被视为“0”。在
下面给出了一个例子,您可以按照相同的格式创建自己的迷宫。在
^{pr2}$[[0, 0, 0, 1, 1, 0, 0, 0, 1, 1],
[0, 0, 1, 0, 1, 0, 0, 0, 0, 1],
[1, 0, 1, 0, 1, 0, 0, 1, 0, 0],
[1, 0, 0, 0, 1, 0, 0, 1, 0, 0],
[1, 1, 0, 1, 1, 1, 0, 1, 1, 0],
[0, 1, 0, 0, 1, 0, 0, 1, 0, 0],
[0, 1, 0, 1, 1, 0, 1, 1, 1, 0],
[0, 1, 0, 1, 0, 0, 1, 0, 0, 0],
[0, 0, 0, 1, 0, 1, 1, 0, 1, 1],
[1, 1, 0, 0, 0, 1, 0, 0, -1, 1]]
第2步:创建自己的函数来确定迷宫中的运动
用户定义函数必须遵循以下格式。在
defmaze_move(maze,position,memory):""" Your code here """returnmove,memory
函数的输入参数为:
maze
作为表示迷宫的嵌套列表。在position
是一个tuple
,有两个整数:v_index
和{}。第一个整数 v_index
表示垂直索引,第二个整数h_index
表示水平索引,如下图所示。在memory
可以是任何数据类型。用户可以使用它来跟踪所有以前的步骤或动作。内存的初始值是None
。在
输出包括:
move
是一个tuple
,有两个整数:v_move
和{}。它用于指示角色如何在迷宫中移动,如下图所示。在 memory
是更新后的内存,例如迷宫中角色之前的所有步骤或之前的移动。在
该函数接收迷宫信息、迷宫中的当前位置、上一步、移动或其他形式的内存;然后决定下一步移动并更新内存。在
第3步:应用您的函数来玩游戏
只需调用mappy
或pacman
函数,就可以玩游戏了
mappy.play(maze,maze_move)pacman.play(maze,maze_move)
play()
函数有两个输入参数:
maze
是作为迷宫信息的嵌套列表。在maze_move
是您创建的函数的名称。它可以是任何有效的Python函数名。在
如果你的功能正常工作,你会发现角色在迷宫中移动。在
- 项目
标签: