使用二维列表生成一个迷宫
时间: 2024-03-07 22:49:55 浏览: 23
好的,以下是生成一个简单的迷宫的示例代码:
```python
import random
# 迷宫的大小
size = 10
# 生成一个空的迷宫
maze = [['#'] * size for _ in range(size)]
# 随机选择一个起点和终点
start = (random.randint(0, size - 1), random.randint(0, size - 1))
end = (random.randint(0, size - 1), random.randint(0, size - 1))
# 确保起点和终点不在同一个位置
while start == end:
end = (random.randint(0, size - 1), random.randint(0, size - 1))
# 设置起点和终点
maze[start[0]][start[1]] = 'S'
maze[end[0]][end[1]] = 'E'
# 随机选择一些墙
walls = []
for i in range(size):
for j in range(size):
if (i, j) != start and (i, j) != end and random.random() < 0.3:
walls.append((i, j))
# 构建迷宫
for i, j in walls:
maze[i][j] = '#'
# 打印迷宫
for row in maze:
print(' '.join(row))
```
该示例中,我们首先生成一个空的迷宫,然后随机选择起点和终点,并将它们分别设置为'S'和'E'。接着,我们随机选择一些位置作为墙,并在迷宫中将这些位置设置为'#'。最后,我们将生成的迷宫打印出来。