2019-03-25

作者: 娟永思 | 来源:发表于2019-03-25 13:15 被阅读0次

    random 随机函数的使用

    需要掌握的能力

    • 能够使用随机种子产生“确定”的随机数
    • 能够产生随机整数
    • 能够序列列表进行操作

    一能够使用随机种子产生“确定”的随机数

    给定随机数种子函数为random.seed()函数,当给定随机数种子时,产生的是一个随机数序列,在这个种子下随机数序列也是确定的。

    import random
    
    In [2]: random.seed(10)
    
    In [3]: random.random()
    Out[3]: 0.5714025946899135
    
    In [4]: random.random()
    Out[4]: 0.4288890546751146
    
    In [8]: random.seed(10)
    
    In [9]: random.random()
    Out[9]: 0.5714025946899135
    
    In [10]: random.seed(10)
    
    In [11]: random.random()
    Out[11]: 0.5714025946899135
    

    一般情况下不设顶随机数种子时,默认是使用系统时间作为随机数种子

    二 产生随机整数

    产生整数有几个函数random.randint(a,b)产生a到b之间的随机整数,random.randrange(a,b,k)产生a到b之间的以k为步长的整数。

    random.randrange(10,100,5)
    Out[12]: 75
    
    In [13]: random.randrange(10,100,5)
    Out[13]: 85
    
    In [14]: random.randrange(10,100,5)
    Out[14]: 10
    

    产生随机小数
    random.uniform(a,b)产生a到b之间的随机小数。

    In [15]: random.uniform(10,20)
    Out[15]: 12.060982321395016
    
    In [16]: random.uniform(10,20)
    Out[16]: 18.1332125135732
    
    

    三 对序列进行操作

    主要有两个函数random.choice([])从序列中随机挑选一个,random.shuffle([])对序列进行随机排序并返回。

    In [17]: random.choice([1,2,3,5,9,8,10])
    Out[17]: 10
    
    In [18]: random.choice([1,2,3,5,9,8,10])
    Out[18]: 3
    
    In [20]: s = [1,2,3,5,6,8,9,4]
    
    In [21]: random.shuffle(s)
    
    In [22]: print(s)
    [2, 8, 9, 4, 5, 6, 1, 3]
    

    random.sample()函数
    random.sample的函数原型为:random.sample(sequence, k),从指定序列中随机获取指定长度的片断。sample函数不会修改原有序列。

    In [24]: lii = random.sample(s,3)
    
    In [25]: print(lii)
    [6, 2, 4]
    
    In [26]: print(s)
    [2, 8, 9, 4, 5, 6, 1, 3]
    

    相关文章

      网友评论

        本文标题:2019-03-25

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