python3之模块random随机数

本文详细介绍了Python中使用random模块生成各种随机数的方法,包括基本的随机浮点数和整数生成,以及从序列中选择随机元素等。此外还涉及了如三角分布、高斯分布等高级随机数生成技术。
1.random.random()
随机生成一个大于0小于1的随机数。
print(random.random())

0.03064765450719098
2.random.uniform(a,b)
用于生成一个指定范围内的随机浮点数,两个参数其中一个是下限一个是上限。(a<b)
print(random.uniform(1,10))
print(random.uniform(10,1))

5.804787406757064
7.451530865195986
3.random.randint(a, b)
用于生成一个指定范围内的整数,(a<=N<=b)
print(random.randint(1,20))

20
4.random.randrange([start], stop[, step])
从指定范围内,按指定的基数递增的集合中获取一个随机数
print(random.randrange(1,10,2))

#相当于从1,3,5,7,9中随机获取一个数
5.random.choice(sequence)
参数sequence表示一个有序类型,从序列中获取一个随机元素。
import random

lis = [1,2,3,4]
tup = (5,6,7,8)
print(random.choice(lis))
print(random.choice(tup))
6.random.shuffle(x[, random])
用于将一个列表中的元素打乱,即将列表内的元素随机排列。
import random
lis = [1,2,3,4]
print(lis)
random.shuffle(lis)
print(lis)

#注意:只能应用于列表,不能用于tuple,dict
#output:
[1, 2, 3, 4]
[1, 4, 2, 3]
7.random.sample(sequence, k)
从指定的序列中随机获取指定长度的片断并随机排列,sample函数不会修改原有序列
lis = [1,2,3,4]
tup = (5,6,7,8)
str = "python is ok"
samp_lis = random.sample(lis,3)
samp_tup = random.sample(tup,3)
samp_str = random.sample(str,3)
print(samp_lis)
print(samp_tup)
print(samp_str)


[4, 1, 3]
[6, 8, 7]
['p', 'n', 'k']
8、其他方法
# 三角分布的随机数 random.triangular(low, high, mode)
# 高斯分布的随机数(稍快) random.gauss(mu, sigma)
# beta β分布的随机数 random.betavariate(alpha, beta)
# 指数分布的随机数 random.expovariate(lambd)
# 伽马分布的随机数 random.gammavariate(alpha, beta)
# 对数正态分布的随机数 random.lognormvariate(mu, sigma)
# 正态分布的随机数 random.normalvariate(mu, sigma)
# 冯米塞斯分布的随机数 random.vonmisesvariate(mu, kappa)
# 帕累托分布的随机数 random.paretovariate(alpha)
# 韦伯分布的随机数 random.weibullvariate(alpha, beta) 

转载于:https://www.cnblogs.com/zhangxinqi/p/9069741.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值