如何用python随机生成数字,随机生成数字python

  如何用python随机生成数字,随机生成数字python

  Python产生随机数的方法如下:1。随机整数由随机库的randint函数生成,浮点数由一致函数随机生成等。2.使用第三方库numpy中的randn函数生成符合正态分布的随机矩阵。

  Python中随机数的生成方式主要有两种,一种是random模块,另一种是numpy库中的random函数。

  OUTLINE

  随机模块

  数字中的随机函数

  摘要

  random模块

  random模块中有近七个函数可用于生成随机数:

  random . random()功能:随机生成一个[0,1]的浮点用法:

  随机输入

  number=random.random()

  # output:0.7178886135325596random . uniform(a,b)功能:随机生成一个浮点数用法[a,b]:

  number=random.uniform(2,4)

  # Output:2.070517705689751random . randint(a,b)功能:随机生成[a,b]的整数用法:

  number=random.randint(2,4)

  #输出:3随机。Randrange (A,B,step)功能:在生成的整数序列中随机选择一个数用法:,从A开始,每增加一步,到B结束

  number=random.randrange(2,10,2)

  #输出:2

  random.choice(sequence)
功能:从一个已有的sequence中随机选择一个元素
用法:

  

number=random.choice(range(2,10))

  #输出:6

  number=random.choice('anbegvdje')

  #输出:g

⑥ random.sample(sequence,k)
功能:从某一序列中获取指定长度的片段
用法:

  

a=['香蕉','苹果','橘子','眼影','眼线']

  b=random.sample(a,2)#输出:['橘子','苹果']

⑦ random.shuffle(列表)
功能:打乱一个列表的元素顺序
用法:

  

a=['香蕉','苹果','橘子','眼影','眼线']

  random.shuffle(a)#打乱这个操作不需要重新定义对象,它作用的是对象本身

  #输出:['眼线','苹果','眼影','橘子','香蕉']

  

numpy中的random函数

  numpy中的random函数可以调用的方法主要有两种,一种是生成随机浮点数,二是生成随机整数。

  ① np.random.randn(a,b)
功能:生成a*b维的随机数,且该数服从标准正太分布
用法:

  

data=np.random.randn(5,4)

  #输出:

  array([[-1.6101468,-0.81103612,0.44875047,0.55987574],

  [-0.33322916,0.18676658,-0.18424432,-0.84435811],

  [0.57654276,0.28830858,-0.73403656,1.59404864],

  [0.39009202,0.86239796,0.66290243,-0.61292579],

  [0.03081516,0.99335315,-0.6875357,0.90552971]])

② random.randint(low,high,size)
功能:生成一个<以low为下限,high为上限,size大小>的随机整数矩阵,其中数值范围包含low,不包含high
用法:

  

data=np.random.randint(low=2,high=5,size=(5,7))

  #输出:

  array([[4,2,4,4,4,4,2],

  [4,2,2,4,3,3,3],

  [3,4,3,4,3,3,4],

  [3,4,2,3,3,2,2],

  [3,3,3,3,2,3,2]])

总结

  1、在我们日常使用中,如果是为了得到随机的单个数,多考虑random模块;如果是为了得到随机小数或者整数的矩阵,就多考虑numpy中的random函数;

  2、对于random模块的函数调用方法的记忆,可以多从它本身的英译出发,并多比较其不同从而加深理解~

  

推荐课程:Introduction to Even More Python for Beginners(微软官方课程)

  

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: