zoukankan      html  css  js  c++  java
  • Python random库

    2017-07-30 22:26:19

    随机函数random库的使用频率还是蛮高的,下面我就介绍一下python中random库的使用。相较于c++,Python的random库简直不要更好用。

    毫无疑问,使用前需要导入random库,即import random。然后就可以尽情使用了。

    Python会自行添加种子,不需要自己去添加。

    一、随机实数

    • random.random():无参数,将返回一个 [0,1) 的浮点数
    import random
    
    # 不需要自己添加种子,Python真的好用
    print(random.random()) print(random.random()) # 0.07585186785562659 # 0.2636194113603577
    •  random.uniform(a,b):将返回一个 [a,b] 的浮点数
    import random
    
    print(random.uniform(3,5))
    print(random.uniform(6,10))
    
    # 3.205932268055906
    # 7.324613280527553

    如果要返回一个在 [a,b) 的浮点数,则可以借助 random.random() 函数,使用技巧 a + (b-a)*random.random() 即可

    二、随机整数

    • random.randint(a,b):将返回一个 [a,b] 之间的随机整数
    import random
    
    print(random.randint(3,5))
    print(random.randint(6,10))
    
    # 4
    # 7
    • random.randrange(start,end,step):将返回 [start,end) 之间步长为step的随机整数。start缺省为0,step缺省为1
    import random
    
    # 输出 100 <= number < 1000 间的偶数
    print ("randrange(100, 1000, 2) : ", random.randrange(100, 1000, 2))# 输出 100 <= number < 1000 间的其他数
    print ("randrange(100, 1000, 3) : ", random.randrange(100, 1000, 3))
    
    # randrange(100, 1000, 2) :  976
    # randrange(100, 1000, 3) :  520

    三、随机序列值

    • random.choice(seq):从序列的元素中随机挑选一个元素,比如random.choice(range(10)),从0到9中随机挑选一个整数
    import random
    
    print ("choice([1, 2, 3, 5, 9]) : ", random.choice([1, 2, 3, 5, 9]))print ("choice('A String') : ", random.choice('A String'))# choice([1, 2, 3, 5, 9]) :  2
    # choice('A String') :  n
    • random.shuffle (lst):将序列的所有元素随机排序。lst 可以是一个序列或者元组,将返回随机排序后的序列
    import random
    
    list = [20, 16, 10, 5];
    random.shuffle(list)
    print ("随机排序列表 : ",  list)
    
    random.shuffle(list)
    print ("随机排序列表 : ",  list)
    
    # 随机排序列表 :  [16, 5, 10, 20]
    # 随机排序列表 :  [16, 5, 20, 10]
    • random.sample(seq,k):从seq从选取k个互异的样本,并形成一个列表返回
    import random
    
    print(random.sample('abcdefghij',3))
    
    # ['e', 'c', 'd']
  • 相关阅读:
    常用sql(转)
    dos
    VS调试 DataTable (转载)
    JS 对象 数组求并集,交集和差集
    js跳出循环的方法区别(break,continue,return)(转载)
    echarts 曲线平滑配置
    js 动态 批量 创建局部或全局变量 (转载)
    电脑 闪屏 无法启动的原因
    js switch case 判断的是绝对相对===,值和类型都要相等
    无法创建“匿名类型”类型的常量值。此上下文仅支持基元类型或枚举类型。
  • 原文地址:https://www.cnblogs.com/hyserendipity/p/7261157.html
Copyright © 2011-2022 走看看