python之random模块

1、random简介

  用于生成伪随机数。

2、随机生成整数

2.1、random.randrange(stop)   

  生成整数随机数,stop必须是正整数。

2.1.1、随机生成一个100以内的正整数

import random
num = random.randrange(100)
print(num)

  

2.1.2、随机生成10个0~9之间(包括0和9)的随机数列表。

import random
l = [random.randrange(10) for i in range(10)] print(l)

  输出结果:

[8, 3, 5, 4, 6, 8, 9, 0, 7, 8]

 

2.2、random.randrange(start, stop[, step])   

  生成整数随机数,start必须是>=0的整数,stop、step必须是正整数(step可以不填,使用默认值)。

2.2.1、随机生成一个0~9之间,步进为2的数

import random

num = random.randrange(0, 9, 2)
print(num)

 

2.2.2、随机生成10个0~9之间,步进为2的数作为元素的列表

import random
l = [random.randrange(0, 9, 2) for i in range(10)]
print(l)

 

  输出结果:

[4, 2, 2, 8, 8, 4, 2, 2, 8, 0]

 

 2.3、random.randint(a, b)   

  生成整数随机数N,a <= N <= b 。

2.3.1、随机生成一个大于等于1且小于等于6的数

import random
num = random.randint(1, 6)
print(num)

  输出结果:1

2.3.2、随机生成10个大于等于1且小于等于6的数,并组成列表

import random
l = [random.randint(1,6) for i in range(10)]
print(l)

  输出结果:

[3, 5, 5, 4, 3, 1, 6, 3, 5, 2]

 

3、随机生成序列

3.1、random.choice(seq)

  从非空序列seq中返回一个随机元素。如果seq是空的,则会报出IndexError错误。

import random
l = ["a","b",3,4]
print(random.choice(l))
print(random.choice(l))

  输出结果:

b
3

 

3.2、random.sample(population, k)   

  从population抽出k个样本

import random
s = random.sample([10, 20, 30, 40, 50], k=4)
print(s)

  输出结果:

[20, 10, 50, 30]

 

4、实值分布

4.1、random.random()   

  返回下一个在[0.0,1.0)之间的随机的浮点数。

import random
num = random.random()
print(num)

  输出结果:

0.7460956960647801

 

4.2、random.uniform(a, b)

  返回一个在a,b之间的浮点数。

import random
num = random.uniform(1, 9)
print(num)

  输出结果:

5.212990842603879

 

  更多实例请参考《The Python Library Reference, Release 3.6.5》中9.6.7 Examples and Recipes。


  

  
  

posted @ 2018-10-01 01:07  RobotsRising  阅读(273)  评论(0编辑  收藏  举报