11-Python Random库的使用

random库用于生成随机数

  • 基本随机数函数:seed(), random()
  • 扩展随机数函数:randint(), getrandbits(), uniform(),
    randrange(), choice(),shuffle()
  1. seed(a=None)
    初始化给定的随机数种子,默认为当前系统时间

    random.seed(10) 
    #产生种子10对应的序列
    
  2. random()
    生成一个[0.0, 1.0)之间的随机小数

    random.random()
    
  3. 常用的 经过扩展的 random()方法

    image

函数描述
randint(a, b)生成一个[a, b]之间的整数
randrange(m, n[, k])生成一个[m, n)之间以k为步长的随机整数
getrandbits(k)生成一个k比特长的随机整数
uniform(a, b)生成一个[a, b]之间的随机小数
choice(seq)从序列seq中随机选择一个元素
shuffle(seq)将序列seq中元素随机排列,返回打乱后的序列
random.randint(10, 100)
64
random.randrange(10, 100, 10)
80
random.getrandbits(16)
37885
random.uniform(10, 100)
13.096321648808136
random.choice([1,2,3,4,5,6,7,8,9])
8 
s=[1,2,3,4,5,6,7,8,9];random.shuffle(s);print(s)
[3, 5, 8, 9, 6, 1, 2, 7, 4]

  1. random是如何生成随机数的呢?

    image

    image

    请注意图二中,左边的代码,产生了两个随机数,而那两个随机数恰好就是 图一中 序列的前两个;而右边的代码则是生成完全相同的两个随机数

    所以 seed(10) 生成一个随机数序列,之后random()会按照顺序一次取出这个随机数序列中的随机数

  2. 我们什么时候会使用seed()函数呢?直接默认的用系统当前时间岂不是更好?
    当我们的程序希望 生成的随机数能够 复现 的时候,那么设置 seed()函数 就会很好了,因为他生成的随机数是固定的

https://www.jianshu.com/p/8799671d5858

IT入门?感谢关注

IT入门?感谢关注 | ?练习地址:www.520mg.com/it

评论 29
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

曾亲桂林

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值