以我的世界视角来理解seed的随机种子

本文通过我的世界游戏来比喻解释随机种子的概念。将seed比作游戏的种子,而randn等函数则相当于游戏中的不同地形生成器。进一步阐述了如何通过设定随机种子实现随机数的复现性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

以我的世界视角理解seed随机种子




你玩过我的世界吗?

如果你的回答是玩过,那么理解seed随机种子就十分简单了
其实seed随机种子就像我的世界生成世界的种子
randn,rand,uniform等就可以理解为地图的不同的地形;
randn(2,4)就可以看做地形的(2,4)大小的一个固定位置

一个狸子:
在这里插入图片描述
在这里插入图片描述


你只要在创建地图的时候输入这个种子,那么你生成的地图永远是那样的

又一个狸子:

在这里插入图片描述

如果使用random.rand()没有设置种子,那系统随机给你设置种子生成地图,再产生地形(也就是生成random.rand() ),因为默认生成为当前系统时间,所以并不可能生成两个地形相同的种子,所以生成的随机数一般不同

另一个狸子:

在这里插入图片描述

(因为seed种子使用生成地形(也就是使用randn()等)只是一次性的,然后再生成地形如果不调用,就系统随机给你生成种子再生成地形。固想要它每次都是一个地形的话,就需要再次调用!!!

一个饭狸:
在这里插入图片描述


让我们再看一些狸子:

在这里插入图片描述
我们可以看到这四个用了同一世界同个“地形”仅位置不同的狸子,我们可以将他们都以先从左往右,从上往下读成一维数组,可以发现对应位置是相同的。所以我认为这个“地形”形成的方式都是以一维的形式形成的。也是形成就不会改变了。


我们再看看别的"地形"
狸子:

在这里插入图片描述

在这里插入图片描述
易看出每个地形也是固定的


总结:

当程序里生成一个种子那么,之后使用的一切都已经固定好了,就不再随机了,世界已经生成好了,你怎么看它都是那样。

来自一位菜狗的分享,若有错误,请多指正。
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值