zoukankan      html  css  js  c++  java
  • ZH奶酪:【Python】random模块

    Python中的random模块用于随机数生成,对几个random模块中的函数进行简单介绍。如下:
    random.random()

    用于生成一个0到1的随机浮点数。如:

    import random
    random.random()

    输出:

    0.3701787746508932


    random.uniform(a,b)

    用于生成一个指定范围内的随机浮点数,两个参数一个是上线,一个是下线。如:

    random.uniform(10,20)

     输出:

    16.878776709127855

    random.randint(a,b)

    用于生成指定范围内的整数,生成上线和下线之间的随机数,如:

    random.randint(10,20)

     输出:

    14

    random.randrange([start], stop[, step])

    从指定范围内,按指定基数递增的集合中 获取一个随机数。如:

    random.randrange(10, 100, 2)

    结果相当于从[10, 12, 14, 16, … 96, 98]序列中获取一个随机数。

    random.choice(sequence)

    参数sequence表示一个有序类型。这里要说明 一下:sequence在python不是一种特定的类型,而是泛指一系列的类型。list, tuple, 字符串都属于sequence。如:

    random.choice((“Tuple”,”List”, “Dict”)) 

    输出:

    List

    random.shuffle(x[, random])

    用于将一个列表中的元素打乱,如:

    x=[“Python”,”data”,”random”,”Mining”,”good”]
    random.shuffle(x)
    print x

    输出:

    [‘Python’, ‘Mining’, ‘good’, ‘random’, ‘data’]

    random.sample(sequence, k)

    从指定序列中随机获取指定长度的片断。sample函数不会修改原有序列,如:

    lists=[1,2,3,4,5,6,7,8,10]
    a=random.sample(lists,3)
    print a

    输出:

    [4, 7, 5]

    numpy模块中有random模块,这两个模块在功能方面和性能方面有一定的差别,numpy.random模块有以下一些函数和功能模型:

    numpy.random.rand(d0, d1, …, dn):

    其中d0, d1, …, dn为整数(int)型,输出一个shape为(d0, d1, …, dn)的矩阵。如:

    np.random.rand(3,2)

    输出:

    array([
              [ 0.14022471,  0.96360618],
              [ 0.37601032,  0.25528411],
              [ 0.49313049,  0.94909878]
    ])

    numpy.random.randn(d0, d1, …, dn)

    其中d0, d1, …, dn)为整数型,输出标准正太分布的矩阵。

    生产的分布,则sigma * np.random.randn(…) + mu,如下:

    若我们要生成满足正太分布为N(3,2.5^2),2行4列的array

    2.5 * np.random.randn(2, 4) + 3

    输出:

    array([
             [-4.49401501,  4.00950034, -1.81814867,  7.29718677],
             [ 0.39924804,  4.68456316,  4.99394529,  4.84057254]
    ])

    numpy.random.randint(low, high=None, size=None)

    生产一定范围内的元素为整数的array。

    low为下限,size为生成的array大小,如果high为none则生成0~low的均匀分布随机数,若指定了high,那么生产low~high的均匀分布随机数。如生产2×4的在(0,4)的array,则:

    np.random.randint(5, size=(2, 4))

    输出:

    array([
             [4, 0, 2, 1],
             [3, 2, 2, 0]
    ])



  • 相关阅读:
    Android复习(一)基础知识
    iOS Xcode真机调试包下载地址
    使用AndroidStudio开发cocos2d-x,以及可能会出现的问题
    浅析为什么用高阶组件代替 Mixins
    github readme 添加图片预览
    vue打包多页报错webpackJsonp is not defined
    MegaPixImage插件代码(new MegaPixImage)
    【react学习二】create-react-app 接入antd 并按需加载组件
    canvas 计算文字宽度(常用于文字换行)
    【react学习一】首先先create-react-app 配置less、sass
  • 原文地址:https://www.cnblogs.com/CheeseZH/p/4593349.html
Copyright © 2011-2022 走看看