在C语言我们可以用rand和srand函数来生成随机数,且这些函数需要用到的库为。

那么在Python我们需要用到的库是什么呢?使用起来会比C语言更难么?或者说使用起来会不会比C语言更有趣一点,以至于很多人说学C语言很枯燥,小编一直在想难道编程真的只能是枯燥无味的吗?或者说如何将编程语言和现实结合起来呢?要实现这些肯定是需要对很高的技术含量的,So,继续前行叭,正如网上所说年轻人不讲武德,直接开干~

Random库简介


random库是使用随机数的python标准库,所谓标准库,即可以直接使用的,无需使用pip下载。(安装python库,打开cmd,输入:pip install 库名)

使用/调用random库:import random

random() 方法返回随机生成的一个实数,它在[0,1)范围内。


random常用函数


包含两类函数,常用的有8个:

基本随机数函数:seed(),random() 

随机扩展函数:randint(),getrandbits(),uniform() ,

randrange(),choice(),shuffle()

当然,肯定会有人想问为什么会产生随机数呢?或者说随机数是如何产生的呢?

To:首先,python中的随机数通过使用随机数种子产生计算机产生随机数需要随机数种子的,也就是说随机数的产生是有规律的,那么抽奖也是可以用这种规律的,即很有可能你就是那个幸运儿~

而随机数种子确定了随机序列的产生。比如给定一个随机数种子10,再通过梅森旋转算法生成一个随机序列,那么在随机序列中的每一个数就是随机数。只要种子相同,无论是每一个数,还是数之间的关系都是确定的。即随机数种子确定了随机数的产生。


相关函数介绍


2个基本随机函数介绍:

1.seed(a=None):初始化给定的随机数种子,默认为当前系统时间

import random#引用random库,使用库函数前均需提前引用random.seed(10)#产生种子数为10对应的序列

2.random():生成一个【0.0,1.0)之间的随机小数 

random.random() 

random.seed(10)

只要种子相同,那么产生的随机数也是相同的,也叫伪随机数 

输出:print(random.random())

6个扩展随机数函数:

1.randint():randint(a,b):生成一个[a,b]之间的整数

random.randint(10,100)

2.randrange():randrange(m,n[,k]):生成一个[m,n)之间步长的随机数 

random.randrange(10,100,10)

3.getrandbits():getrandbits(k):生成一个k比特长的整数

random.getrandbits(16)

4.uniform():uniform(a,b):生成一个[a,b]之间的随机小数

random.unifom(10,100)

5.choice():choice(seq):从序列seq中随机选择一个元素

random.chioce([1,2,3,4,5,6,7,8,9])

6.shuffle():shuffle(seq):将序列seq中元素随机排列,返回打乱后的序列

s=[1,2,3,4,5,6,7,8,9];random.shuffle(s);print(s)

以上代码均为随机数函数,输出结果不一定相同(有种子数除外),故相关运行结果均不展示。


(Python系列)未完待续...