• Python Random模块详解


    Random模块详解

    随机数

    random模块

    • randint(a, b) 返回[a, b]之间的整数
    • randrange ([start,] stop [,step]) 从指定范围内,按指定基数递增的集合中获取一个随机数,基数 缺省值为1。random.randrange(1,7,2)
    • choice(seq) 从非空序列的元素中随机挑选一个元素,比如random.choice(range(10)),从0到9中 随机挑选一个整数。random.choice([1,3,5,7])
    • 3.6开始提供choices,一次从样本中随机选择几个,可重复选择,可以指定权重
    • random.shuffle(list) ->None 就地打乱列表元素
    • sample(population, k) 从样本空间或总体(序列或者集合类型)中随机取出k个不同的元素,返回 一个新的列表
      • random.sample([‘a’, ‘b’, ‘c’, ‘d’], 2)
      • random.sample([‘a’, ‘a’], 2) 会返回什么结果
      • 每次从样本空间采样,在这一次中不可以重复抽取同一个元素

    import random
    # 导入random模块
    
    • 1
    • 2
    x = list(range(5))
    # 定义一个变量x,x的值是一个列表,列表中有一个range(5)对象
    
    • 1
    • 2
    x
    # 输出结果 [0, 1, 2, 3, 4] 顺序显示
    
    • 1
    • 2
    random.shuffle(x)
    # x调用random的shuffle方法,shuffle方法就是洗牌的意思打乱顺序。
    
    • 1
    • 2
    x
    # 返回了一个全新列表,并且是打乱顺序的[2, 1, 0, 3, 4]
    
    • 1
    • 2

    在这里插入图片描述

    • 使用random的randint方法,获取0,1
      在这里插入图片描述
    • 使用random的randrange方法,range对象,前包后不包。
      在这里插入图片描述
    • 随机取整,10永远也看不到,因为前包后不包。
      在这里插入图片描述
    print(random.choices(x))
    # choices可以重复取
    
    • 1
    • 2

    在这里插入图片描述
    在这里插入图片描述

    • [0, 1] 的范围内取6次,循环执行10次
      在这里插入图片描述
    • [0, 1] 的范围内取6次,[10, 1]权重1v1对应(出现10次0,出现1次1),循环执行10次
      在这里插入图片描述
  • 相关阅读:
    【JVM】jvm的双亲委派机制
    协程(四)——Android中使用协程
    java基础:java安装、配置环境变量
    alipay sofa-ark-1.1.5 各种类加载器 & 优先级
    Web前端开发者的福音,这款APP让你更上一层楼
    uni-app vue3+ts+vite采坑说明
    互联网营销的50条黄金法则
    SpringBoot之用拦截器避免重复请求
    类和对象 —— 多态
    etcdctl-管理操作etcd集群
  • 原文地址:https://blog.csdn.net/weixin_41224474/article/details/133606174