Python的标准库,random()

random()函数产生伪随机数,伪随机数是采用梅森旋转算法生成的(伪)随机序列中的元素,称为随机数

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

扩展随机函数:ranint()、getrandbits()、uniform()、randrange()、choice()、shuffle()、sample()

#seed(a=None)初始化随机数种子,默认值为当前系统时间
#random()生成一个[0.0,1.0]之间的整数
>>> import random
>>> random.seed(5)
>>> random.random()
0.6229016948897019
>>> random.random()
0.7417869892607294
>>> random.seed(5)
>>> random.random()
0.6229016948897019
#randint(a,b)生成一个[a,b]之间的整数
>>> random.randint(1,10)
6

#getrandbits(k)生成一个k比特长度的随机数
>>> random.getrandbits(10)
814
>>> bin(814)
'0b1100101110'

#randrange(start,stop[,step])生成一个[start,stop)之间以step步数的随机数整数,使用方法与range()相似
>>> random.randrange(1,10,2)
9
>>> random.randrange(1,10,2)

1
>>> random.randrange(1,11)
8

#uniform(a,b)生成一个[a,b]之间的随机小数
>>> random.uniform(1,10)
7.983627106921452
#choice(seq)从序列类型中随机返回一个seq元素,序列类型包括列表、元组、字符串
>>> import random
>>> random.choice([1,2,3,4,5])
3
>>> random.choice((1,2,3,4,5))
3
>>> random.choice({1,2,3,4,5})
Traceback (most recent call last):
  File "", line 1, in 
    random.choice({1,2,3,4,5})
  File "C:\Program Files\Python36\lib\random.py", line 259, in choice
    return seq[i]
TypeError: 'set' object does not support indexing      #对象不支持索引,集合是无序的
>>> random.choice('Python')
'P'

#shuffle(func)func变量只能用于列表类型,将列表类型中的元素随机排列,返回打乱后的序列
>>> ls = [1,2,3,4,5]
>>> random.shuffle(ls)
>>> ls
[2, 4, 3, 5, 1]

#sample(pop,k)从pop表示的组合数据类型(列表、集合、元组、字符串)中随机选取k个元素,以列表类型返回
>>> random.sample({1,2,3,4,5},3)
[3, 4, 5]
>>> random.sample((1,2,3,4,5),3)
[3, 2, 5]
>>> random.sample([1,2,3,4,5],3)
[3, 4, 2]
>>> random.sample('12345',3)
['2', '5', '4']

 

你可能感兴趣的:(Python的学习)