Python 代码实现康威生命游戏:随机初始状态与规则演化的奇妙之旅
康威生命游戏(Conway's Game of Life)是一种基于细胞自动机的仿真游戏。在游戏中,通过设定初始状态的细胞,根据简单的规则来演化生成新的细胞状态。 下面是使用Python实现康威生命游戏的代码示例: ```python import random import time # 定义棋盘大小 WIDTH = 40 HEIGHT = 20 # 初始化棋盘 board = [[0] * WIDTH for _ in range(HEIGHT)] # 随机生成初始细胞状态 for i in range(HEIGHT): for j in range(WIDTH): board[i][j] = random.randint(0, 1) # 定义细胞更新规则 def update(board): new_board = [[0] * WIDTH for _ in range(HEIGHT)] for i in range(HEIGHT): for j in range(WIDTH): # 统计周围细胞存活数量 count = 0 for di in [-1, 0, 1]: for dj in [-1, 0, 1]: ni, nj = i + di, j + dj if ni < 0 or ni >= HEIGHT or nj < 0 or nj >= WIDTH: continue count += board[ni][nj] count -= board[i][j] # 根据存活数量更新细胞状态 if board[i][j] == 1: if count == 2 or count == 3: new_board[i][j] = 1 else: if count == 3: new_board[i][j] = 1 return new_board # 打印当前细胞状态 def print_board(board): for i in range(HEIGHT): for j in range(WIDTH): if board[i][j] == 1: print('#', end='') else: print('.', end='') print() # 主循环 while True: print_board(board) board = update(board) time.sleep(0.5) print('\033c') # 清屏 ``` 这段代码使用随机方式生成初始细胞状态,并通过规则更新细胞状态,并通过打印输出在终端实现了康威生命游戏的效果。可以通过适当调整代码中的参数来改变棋盘的大小或更新频率等。 ######[AI写代码神器 | 1177点数解答 | 2024-11-26 20:59:20]
- 超燃年会来袭!诗舞歌戏轮番上阵,共赴欢乐盛宴! (字节豆包 | 206点数解答 | 2025-01-08 10:59:43)366
- Python 运行报错:urllib3 网络连接创建失败,原因及排查建议(字节豆包 | 161点数解答 | 2024-10-31 00:39:36)498
- Python 实现球类:精准计算半径、表面积与体积,附输入验证与异常处理!(阿里通义 | 261点数解答 | 2024-11-28 21:19:39)382
- 基于商品效期规则的本地网页管理系统,无需服务器和网络,单HTML文件本地浏览器运行。 商品效期规则: 保质期≥12个月:临期提醒提前45天,下架提前5天(含过期提醒) 6个月≤保质期<12个月:临期提醒提前20天,下架提前3天(含过期提醒) 3个月≤保质期<6个月:临期提醒提前15天,下架提前3天(含过期提醒) 30天≤保质期<3个月:临期提醒提前10天,下架提前3天(含过期提醒) 15天≤保质期<30天:临期提醒提前5天,下架提前3天(含过期提醒) 保质期≤15天:临期提醒提前3天,下架提前2天(含过期提醒) 一定要遵守上门这个规则,状态以上位置,需要一一对应。 严格遵循 6 级保质期规则 → 自动计算「临期/下架/过期」状态(绿/黄/红) 产品管理模块: 商品列表展示:序号、名称、类别、生产日期、保质期、到期日、剩余天数(带单位)、状态(正常/临期/下架(一定要注意,选择类型要根据选择显示),对应绿/黄/红颜色)、操作(编辑、删除、备注),默认按照后添加先排,还需要根据一些条件,比如剩余天数可以筛选排序。 功能:添加商品(弹窗形式,保质期仅支持"XX天"或"XX月"格式)(讯飞星火 | 2053点数解答 | 2026-04-01 23:04:48)34
- 卡牌游戏“初始”技能揭秘:Python代码模拟初始手牌加8,附实战注意要点!(字节豆包 | 262点数解答 | 2025-07-19 22:14:49)119
- Python 实战:学生信息列表转字典、遍历、深拷贝及数据修改全流程(GPT | 422点数解答 | 2024-10-29 15:43:54)451
- Python实战:学生成绩列表转字典,深拷贝与数据修改操作全解析(字节豆包 | 254点数解答 | 2024-10-29 16:01:39)443
- 易语言实现复杂文本信息提取:解析游戏装备任务文本代码全揭秘(字节豆包 | 854点数解答 | 2025-06-02 21:47:02)190
- 易语言:轻松处理游戏文本,提取装备属性与去除颜色标记(DeepSeek | 492点数解答 | 2025-06-02 21:49:03)193
- 用 JavaScript 实现福利彩票抽奖:一键体验浏览器上的中奖乐趣!(GPT | 282点数解答 | 2024-09-25 20:36:52)290
- JavaScript实现福利彩票抽奖:含规则、界面与代码示例(GPT | 1542点数解答 | 2024-09-27 14:41:50)451
- 用 C++ 和 OpenCV 生成带随机偏移的圆周上的点:代码剖析(字节豆包 | 29点数解答 | 2024-11-06 23:40:42)277