python的random库的简单使用(生成随机数)

random库概述:python内置的random库主要用于产生各种分布的伪随机数序列,采用的是梅森旋转算法,可用于大多数的工程应用。

伪随机数和真随机数

random库常用的9个随机数生成函数:

  1. seed(a=None)初始化随机数种子,默认值为当前系统时间
    注:当a的值确定时,每次随机出来的数都是固定的
  2. random()生成一个[0.0,1.0)之间的随机小数
  3. randint()生成一个[a,b]之间的整数
  4. randrange(start,stop[,step])生成一个[start,stop)之间以step为步数的随机整数
  5. uniform{a,b)生成一个[a,b]之间的随机小数
  6. choice(seq)从序列类型,例如列表中中随机返回一个元素
  7. shuffle(seq)将序列类型中的元素随机排列
    注:需要单独print输出,因为shuffle没有返回值,直接输出会报错。
  8. sample(pop,k)从pop类型中随机选取k个元素,以列表类型返回
  9. getrandbits(k)生成一个k比特长度的随机整数

当seed的值固定时:

import random
a='axGhFdGhGbhNg'
t=['1','3','5','7','9']
random.seed(6)			#将seed设为固定值6
print(random.random())
print(random.randint(1,5))
print(random.randrange(1,10,2))			#步长为2,所以从(1,3,5,7,9)中随机
print(random.uniform(1,5))
print(random.choice(a))
print(random.sample(a,5))
print(random.getrandbits(2))
random.shuffle(t)			
print(t)			#直接print会返回none,所以分两步

运行结果如下:
python的random库的简单使用(生成随机数)_第1张图片

当seed的值为默认的系统时间时

import random
a='axGhFdGhGbhNg'
t=['1','3','5','7','9']
random.seed()			#seed设为系统默认时间
print(random.random())
print(random.randint(1,5))
print(random.randrange(1,10,2))
print(random.uniform(1,5))
print(random.choice(a))
print(random.sample(a,5))
print(random.getrandbits(2))
random.shuffle(t)
print(t)

运行结果如下:
python的random库的简单使用(生成随机数)_第2张图片

你可能感兴趣的:(知识点,python)