1.random.random()
作用:生成[0.0,1.0)之间的随机小数。注意,不包含1.0。
参数:无
>>> from random import *
>>> seed(10)
>>> random()
0.5714025946899135
>>> random()
0.4288890546751146
>>> random()
0.5780913011344704
>>> random()
0.20609823213950174
>>> seed(10)#再次设置相同的种子,则后续产生的随机数相同。
>>> random()
0.5714025946899135
>>> random()
0.4288890546751146
>>> random()
0.5780913011344704
>>> random()
0.20609823213950174
>>>
设置随机数种子的好处是可以准确复现随机数序列,用于重复程序的运行轨迹,对于仅使用随机数但不需要复现的情形,可以不用设置随机数种子。
2.random.randint()函数生成[a,b]之间的随机整数,函数定义如下:
random.randint(a,b)
作用:生成[a,b]之间的随机整数。注意,此处为闭区间,b可以取到。
参数:
a,b:一个整数。
>>> from random import *
>>> randint(1,10)
8
>>> randint(1,1000)
844
>>> randint(-1000,1000)
-432
>>>
3.random.randrange()函数生成一个随机整数,函数定义如下:
random.randrange(start,stop,step)
作用:生成一个[start,stop)之间以step为步数的随机整数,使用方法与range()相似。
参数:
start:一个整数,表示开始整数。
stop:一个整数,表示结束整数。
step:一个整数,表示步数。
>>> from random import *
>>> seed(10)
>>> randrange(0,1000,5)
730
>>> randrange(0,1000,5)
40
>>> randrange(0,1000,5)
545
>>> randrange(0,1000,5)
615
>>> seed(10)
>>> randrange(0,1000,5)
730
>>> randrange(0,1000,5)
40
>>> randrange(0,1000,5)
545
>>> randrange(0,1000,5)
615
>>>
4.random.uniform()函数生成一个[a,b]之间的随机小数,函数定义如下:
random.uniform(a,b)
作用:生成一个[a,b]之间的随机小数。这里是两边闭区间。注意,随机数可能等于b。
参数:
a、b:一个整数或浮点数。
>>> from random import *
>>> uniform(10,100)
62.02821710210233
>>> uniform(1.1,99.8)
21.441895512168824
>>> uniform(1.1,99.8)
81.37480750896748
>>>
总结:
1.random()没有参数,生成[0.0,1.0)之间的随机小数。左闭右开,不包含1.0。
2.randint(a,b)生成[a,b]之间的随机整数,两边闭区间,都可以取到。
3.randrange(start,stop,step)生成一个[start,stop)之间以step为步长的随机整数,左闭右开。
4.uniform()函数生成一个[a,b]之间的随机小数,两边闭区间,都可以取到。
此处记一个二级题库程序,和答案写的不太一样:
import random
brandlist = ['三星','苹果','vivo','OPPO','魅族']
random.seed()
name = brandlist[random.randint(0,len(brandlist))-1]
print(name)
因为randint(a,b)两边都可以取到,所以len()后要减去1才行。range(a,b)的b是取不到的,和range()是不一样的,这里要注意一下。