zoukankan      html  css  js  c++  java
  • Python3-笔记-E-001-库-随机数random

    import random # 随机数模块
    lists = [1, 2, 3, 4, 5]
    
    def demo():
        # 产生[0, 100]随机整数
        num = random.randint(0, 100)
        print(num)
    
        # 产生[0, 100)随机浮点数
        fnum = random.uniform(0, 100)
        print(fnum)
    
        # 随机获取元素
        elem = random.choice(lists)
        print(elem)
    
        # 打乱顺序
        random.shuffle(lists)
        print(lists)
    
    
    
    def funs():
        # seed(a=None, version=2) // 初始换生成器的随机数
        random.seed()
        random.getstate() # 获取生成器内部状态
        random.setstate(random.getstate()) # 设置生成器内部状态
    
    
        # 获取随机数
        num = random.getrandbits(8) # 获取x位(bit)随机整数
        # randrange(stop) / randrange(start, stop[, step]) // 生成随机整数
        num = random.randrange(0, 100, 2) # [0,100)产生的随机整数+2
        # randint(a, b) == randrange(a, b + 1) // [a, b]
        num = random.randint(0, 1)
        fnum = random.random() # 获取浮点随机数 [0.0, 1.0)
        fnum = random.uniform(1, 2) # 获取指定范围内的浮点随机数 [1.0, 2.0)
    
        # triangular(low, high, mode) // 获取随机浮点数, low低边界(默认0),high高边界(默认1),模式(默认边界中点)
        fnum = random.triangular(0, 1, 1.5)
        # betavariate(alpha, beta) // Beta分布,[0.0, 1.0]
        fnum = random.betavariate(1, 1)
        # expovariate(lambd) // 指数分布, lambd返回整,值[0, +∞]; lanbd返回负,值[-∞, 0]
        fnum = random.expovariate((lambda arg1, arg2: arg1 + arg2)(1, 2)) # lambd返回值越小,获得值越大
        # gammavariate(alpha, beta) // 伽玛分布
        fnum = random.gammavariate(1, 1)
        # gauss(mu, sigma) // 高斯分布 mu:平均值, sigma:标准偏差
        fnum = random.gauss(1, 1)
        # lognormvariate(mu, sigma) // 对数正态分布,获得平均值mu和标准偏差sigma的正态分布; mu:任何值,sigma:>0。
        fnum = random.lognormvariate(1, 1)
        # normalvariate(mu, sigma) // 正态分布, mu是平均值, sigma是标准偏差
        fnum = random.normalvariate(1, 1)
        # vonmisesvariate(mu, kappa) // 冯米塞斯分布的随机数。mu:平均角度(弧度[0, 2*pi]), kappa:集中程度>=0
        fnum = random.vonmisesvariate(1, 1)
        # paretovariate(alpha) // 帕累托分布, alpha:形状
        fnum = random.paretovariate(1)
        # weibullvariate(alpha, beta) // 韦伯分布, alpha:缩放, beta:形状
        fnum = random.weibullvariate(1, 1)
    
        elem = random.choice(lists) # 非空序列中取出随机元素, 序列为空抛IndexError
        elems = random.sample(lists, 3) # 从列表中随机获取3个元素, 范围>列表大小,抛ValueError
    
    
        # 打乱顺序
        random.shuffle(lists) # 打乱序列
  • 相关阅读:
    window8用户在安装VirtualBox时弹出了“Installation failed!Error:系统找不到指定的路径”的错误提示
    JSON和JSONP原理和区别
    设计模式前言
    Apache POI使用指南(HSSFWorkbook生成excel)
    java策略模式
    记一次mysql5.7保存Emoji表情
    StopWatch任务计时器
    详谈linux中压缩
    List集合中元素排序
    java中文拼音字母排序
  • 原文地址:https://www.cnblogs.com/vito13/p/7730077.html
Copyright © 2011-2022 走看看