美文网首页
Python 的 random 库

Python 的 random 库

作者: Sui_Xin | 来源:发表于2020-05-08 17:23 被阅读0次

    本文首发于我的个人博客:Sui Xin's Blog
    原文:https://suixinblog.cn/2019/09/python-random.html
    作者:Sui Xin

    Python 的 random 库实现了各种分布的伪随机数生成。

    整数

    • random.randrange(start, stop=None, step=1):从 range(start, stop, step) 返回一个随机选择的元素。stopstep 可以缺省,stop 缺省时返回 range(start) 中的一个随机元素;
    • random.randint(a, b):返回一个 [a, b] 中的随机整数。

    序列

    • random.choice(seq):从非空序列 seq 返回一个随机元素;
    • random.shuffle(x):将序列 x 随机打乱位置;
    • random.sample(population, k):从 population 中选择 k 个不重复的随机元素组成的序列,不保序。

    实值

    • random.random():返回 [0, 1) 区间内的一个浮点数;
    • random.uniform(a, b):返回 a + (b-a) * random.random()

    其他

    random.seed(a=None):设置随机种子。
    random 库还可以支持生成很多分布的实值随机数。

    以相同的顺序打乱两个序列

    使用 zip 模块将两个序列打包,shuffle 后拆开即可。

    import random
    
    
    a = ["Bob", "Jack", "Tom", "Jarry"]
    b = [1, 2, 3, 4]
    
    map_position = list(zip(a, b))
    random.shuffle(map_position)
    a, b = zip(*map_position)
    a, b = list(a), list(b)
    

    相关文章

      网友评论

          本文标题:Python 的 random 库

          本文链接:https://www.haomeiwen.com/subject/xhqqnhtx.html