python常用模块:random模块

    在python中,random模块用于生成随机数。下面介绍一下random模块中最常见的几个函数。

1、random.choice(seq)

      从序列中获取一个随机元素,参数seq表示一个有序类型,seq在python中不是一种特定类型,而是泛指一系列的类型,如list、tuple、字符串。

import random
print(random.choice('abcdefe'))
print(random.choice(['hello','world','python']))
print(random.choice(('Tuple','three','seq')))

2、random.randint(a,b)

     用于生成一个指定范围内的整数。其中参数a是下限,参数b是上限,则生成的随机数n为:a<=n<=b。

import random

a = random.randint(4,10)

3、random.random()

      random.random()用于生成一个0到1范围的随机浮点数,范围为[0,1)即大于等于0小于1的浮点数。

import random 
a = random.random()
print('a = ',a)#a = 0.08992318818473621(随机数,每次运行值不同)

4、random.randrange(start,stop=None,step=1,_int=)

     从指定基数递增的集合中获取一个随机数。如random.randrange(10,100,2),结果相当于从[10,12,14,...,96,98]序列中获取一个随机数,在结果上与random.choice(range(10,100,2))等效。

5、random.sample(population, k)

     从指定序列pipulation中随机获取指定长度为k的片段。sample函数不会修改原有序列。
import random

list = [1,2,3,4,5,6,7,8,9,0]
slice = random.sample(list,4)
print(slice)#某次运行为[5,2,0,4]
print(list)#[1,2,3,4,5,6,7,8,9,0]

6、random.seed([x])

     伪随机数生成模块。如果不提供seed,默认使用系统时间。使用相同的seed,可以获得完全相同的随机数序列,常用于算法改进测试。

from random import *

a = Random()
a.seed(1)
[a.randint(1, 100) for i in range(20)]


b = Random()
b.seed(1)
[b.randint(1, 100) for i in range(20)]

6、random.shuffle(x,random=None)

     用于将一个列表中的元素打乱。

p = ["Python", "is", "powerful", "simple", "and so on..."]

random.shuffle(p)
print(p)

7、random.uniform(a,b)

     用于生成一个指定范围内的随机浮点数,两个参数其中一个是上限,一个是下限。如果a>b,则生成的随机数n:b<=n<=a;如果an:a<=n<=b。

import random

print(random.uniform(10,36))
print(random.uniform(36,10))


你可能感兴趣的:(python常用模块:random模块)