携手创作,共同成长!这是我参与「掘金日新计划 · 8 月更文挑战」的第14天,点击查看活动详情
前言
- 随机应该来说我们开发中必不可少的一个功能,就比如说日志中会产生随机数用来均分,集群中我们通过随机来分摊请求。
- 在python中又该如何随机生成内容呢?
给随机数对象一个种子值,用于产生随机序列。
对于同一个种子值的输入,之后产生的随机数序列也一样。
我们知道在由于random包中生成的是伪随机数,因此通过设置seed可以固定住随机结果。
但有一次使用时发现设置完seed之后结果依然改变:
场景
**比如掷钱币、骰子、转轮、使用电子元件的噪音、核裂变等等。
计算机通过硬件技术摸拟现实世界中这种物理现象所生成的随机数,我们称其为真随机数。 这样的随机数生成器叫做物理性随机数生成器。生成真随机数对计算机的硬件技术要求较高。**
使用
import random
random.random()
random.random() 用于生成一个0-1的随机浮点数:0<=n<1.0
浮点型
那么浮点型该如何生成呢?random.uniform(a,b) 用于生成一个指定范围内的随机浮点数,两个参数中,一个是上限,一个是下限,位置可以互换。if a<b,则生成的随机数n:a<=n<b;else 同理。
随机去数据
random.choice(sequence) 从序列中获取一个随机元素,参数sequence表示一个有序类型,泛指一系列类型,如list,tuple,字符串。
总结
最后还得说一下随机种子数,要每次产生随机数相同就要设置种子,相同种子数的random对象,相同次数生成的数字时完全相同的。
最后的最后我们还是需要注意随机需要做到严格的控制,否则失控就不好玩了