python实现康威生命游戏代码
时间: 2023-07-23 16:10:35 浏览: 180
康威生命游戏是一种基于细胞自动机的模拟游戏,可以用Python实现。下面是一个简单的Python代码示例:
```python
import numpy as np
import matplotlib.pyplot as plt
import matplotlib.animation as animation
# 定义游戏棋盘大小
n = 100
# 初始化棋盘
board = np.random.choice([0, 1], size=(n, n))
# 定义游戏规则
def update_board(board):
# 计算每个细胞周围的细胞数量
nbrs_count = sum(np.roll(np.roll(board, i, 0), j, 1) for i in (-1, 0, 1) for j in (-1, 0, 1)) - board
# 根据细胞数量更新细胞状态
board = np.logical_or(np.logical_and(board, nbrs_count == 2), nbrs_count == 3)
return board
# 创建动画
fig, ax = plt.subplots()
im = ax.imshow(board, cmap='gray_r')
def updatefig(*args):
global board
board = update_board(board)
im.set_array(board)
return im,
ani = animation.FuncAnimation(fig, updatefig, interval=50, blit=True)
plt.show()
```
该代码使用了NumPy和Matplotlib库来实现康威生命游戏。首先定义了棋盘大小,并初始化棋盘。然后定义了游戏规则,计算每个细胞周围的细胞数量,并根据细胞数量更新细胞状态。最后使用Matplotlib库创建动画,每隔50毫秒更新一次棋盘状态,并将结果可视化。
阅读全文