基本信息
源码名称:模拟生命
源码大小:5.70KB
文件格式:.py
开发语言:Python
更新时间:2022-02-18
   友情提示:(无需注册或充值,赞助后即可获取资源下载链接)

     嘿,亲!知识可是无价之宝呢,但咱这精心整理的资料也耗费了不少心血呀。小小地破费一下,绝对物超所值哦!如有下载和支付问题,请联系我们QQ(微信同号):813200300

本次赞助数额为: 2 元 
   源码介绍


规则: 每个细胞有两种状态-存活ON或死亡OFF,每个细胞与以自身为中心的周围八格细胞产生互动。(请想象九宫格)  1)人口过少:当周围低于2个(不包含2个)存活细胞时, 本单元活细胞死亡。  2)稳定:当周围有2个或3个存活细胞时, 本单元细胞保持原样。  3)人口过剩:当周围有3个以上的存活细胞时,本单元活细胞死亡。  4)繁殖:当周围有3个存活细胞时,本单元细胞存活/活化。  运行效果:(Conway产生图案包括:滑翔机、眨眼、ON和OFF)



def update(frameNum, img, grid, N):
    newGrid = grid.copy() for i in range(N): for j in range(N):
            total = int((grid[i, (j - 1) % N]   grid[i, (j 1) % N]  
                         grid[(i - 1) % N, j]   grid[(i 1) % N, j]  
                         grid[(i - 1) % N, (j - 1) % N]   grid[(i - 1) % N, (j 1) % N]  
                         grid[(i 1) % N, (j - 1) % N]   grid[
                             (i 1) % N, (j 1) % N]) / 255) # 因为需要检测网格的 8个边缘。更简洁的方式是用取模(%)运算符,可以用这个运算符让值在边缘折返   # Conway实现规则 :生命游戏的规则基于相邻细胞的 ON 或 OFF 数目。为了简化这些规则的应用,可以计算出处于 ON 状态的相邻细胞总数。  if grid[i, j] == ON: if (total < 2) or (total > 3):
                    newGrid[i, j] = OFF else: if total == 3:
                    newGrid[i, j] = ON # update data  img.set_data(newGrid)
    grid[:] = newGrid[:] return img,