python 随机数

python中随机数的用法总结

第一部分:numpy中的random模块

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

生成标准正态分布。括号里是生成的随机数的维度。将会得到一个ndarray or float,(括号里空着就会得到一个float)

  1. >>numpy.random.randn(3,4)
  2. array([[-0.64094426, -0.43765766, -1.54408872, 0.34945925],
  3. [ 0.05804719, -0.50552109, -0.29340519, 0.24828267],
  4. [ 0.41789882, 0.21788747, 2.85694109, -0.03159635]])


np.random.randint(low, high=None, size=None, dtype='l')
生成整数随机数。low和high都赋值的时候,生成[low,high)之间的随机数。
                             只有low被赋值的时候,生成[0,low)之间的随机数。
[python] view plaincopy
  1. <code class="language-html">>>> np.random.randint(2, size=10)  
  2. array([1000110010])  
  3. >>> np.random.randint(1, size=10)  
  4. array([0000000000])  
  5.   
  6. #Generate a 2 x 4 array of ints between 0 and 4, inclusive:  
  7. >>> np.random.randint(5, size=(24))  
  8. array([[4021],  
  9.        [3220]])</code>  

第二部分:Python中的random模块

Python中的random模块用于生成随机数。下面介绍一下random模块中最常用的几个函数。

random.random

random.random()用于生成一个0到1的随机符点数: 0 <= n < 1.0

random.uniform

  random.uniform的函数原型为:random.uniform(a, b),用于生成一个指定范围内的随机符点数,两个参数其中一个是上限,一个是下限。如果a > b,则生成的随机数n: a <= n <= b。如果 a <b, 则 b <= n <= a。

  1. print   random.uniform(10,20)
  2. print   random.uniform(20,10)
  3. #----结果(不同机器上的结果不一样)
  4. #18.7356606526
  5. #12.5798298022
print random.uniform(10, 20) print random.uniform(20, 10) #---- 结果(不同机器上的结果不一样) #18.7356606526 #12.5798298022

random.randint

  random.randint()的函数原型为:random.randint(a, b),用于生成一个指定范围内的整数。其中参数a是下限,参数b是上限,生成的随机数n: a <= n <= b

  1. print    random.randint(12,20)#生成的随机数n:12<=n<=20
  2. print    random.randint(20,20)#结果永远是20
  3. #printrandom.randint(20,10)#该语句是错误的。下限必须小于上限。
print random.randint(12, 20) #生成的随机数n: 12 <= n <= 20 print random.randint(20, 20) #结果永远是20 #print random.randint(20, 10) #该语句是错误的。下限必须小于上限。

random.randrange

  random.randrange的函数原型为:random.randrange([start], stop[, step]),从指定范围内,按指定基数递增的集合中 获取一个随机数。如:random.randrange(10, 100, 2),结果相当于从[10, 12, 14, 16, ... 96, 98]序列中获取一个随机数。random.randrange(10, 100, 2)在结果上与 random.choice(range(10, 100, 2) 等效。

random.choice

  random.choice从序列中获取一个随机元素。其函数原型为:random.choice(sequence)。参数sequence表示一个有序类型。这里要说明一下:sequence在python不是一种特定的类型,而是泛指一系列的类型。list, tuple, 字符串都属于sequence。有关sequence可以查看python手册数据模型这一章。下面是使用choice的一些例子:

  1. print random.choice("学习Python")
  2. print random.choice(["JGood","is","a","handsome","boy"])
  3. print random.choice(("Tuple","List","Dict"))
print random.choice("学习Python") print random.choice(["JGood", "is", "a", "handsome", "boy"]) print random.choice(("Tuple", "List", "Dict"))

random.shuffle

  random.shuffle的函数原型为:random.shuffle(x[, random]),用于将一个列表中的元素打乱。如:

  1. p=["Python","is","powerful","simple","andsoon..."]
  2. random.shuffle(p)
  3. print p
  4. #----结果(不同机器上的结果可能不一样。)
  5. #['powerful','simple','is','Python','andsoon...']
p = ["Python", "is", "powerful", "simple", "and so on..."] random.shuffle(p) print p #---- 结果(不同机器上的结果可能不一样。) #['powerful', 'simple', 'is', 'Python', 'and so on...']

random.sample

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

  1. list=[1,2,3,4,5,6,7,8,9,10]
  2. slice=random.sample(list,5)#从list中随机获取5个元素,作为一个片断返回
  3. print slice
  4. print list#原有序列并没有改变。

随机整数:
>>> import random
>>> random.randint(0,99)
21

随机选取0到100间的偶数:
>>> import random
>>> random.randrange(0, 101, 2)
42

随机浮点数:
>>> import random
>>> random.random()
0.85415370477785668
>>> random.uniform(1, 10)
5.4221167969800881

随机字符:
>>> import random
>>> random.choice('abcdefg&#%^*f')
'd'

多个字符中选取特定数量的字符:
>>> import random
random.sample('abcdefghij',3)
['a', 'd', 'b']

多个字符中选取特定数量的字符组成新字符串:
>>> import random
>>> import string
>>> string.join(random.sample(['a','b','c','d','e','f','g','h','i','j'], 3)).r
eplace(" ","")
'fih'

随机选取字符串:
>>> import random
>>> random.choice ( ['apple', 'pear', 'peach', 'orange', 'lemon'] )
'lemon'

洗牌:
>>> import random
>>> items = [1, 2, 3, 4, 5, 6]
>>> random.shuffle(items)
>>> items

[3, 2, 5, 6, 4, 1]

转载自 https://blog.csdn.net/u012879475/article/details/54584139

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/568699.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

RuntimeError: Working outside of request context. This typically means that you attempted to use fun

菜吃多了醉了一、报错情况二、解决办法一、报错情况 我在写装饰器的时候运行报错&#xff1a; RuntimeError: Working outside of request context.This typically means that you attempted to use functionality that needed an active HTTP request. Consult the documen…

【Python】读写文件的操作

编程语言中&#xff0c;我们经常会和文件和文件夹打交道&#xff0c;这篇文章主要讲的是Python中&#xff0c;读写文件的常用操作: 一、打开文件 openFile open(../Files/exampleFile.txt, a) 说明&#xff1a; 1. 第一个参数是文件名称&#xff0c;包括路径,可以是相对路径…

测试开发——flask视图函数与路由 实战重点

开头必须分享一个我的志玲姐姐&#xff0c;太可了&#xff01;点击此处 flask视图函数与路由的关系一、视图函数与路由 实战重点1.1 一个视图函数可以绑定多个URL地址1.2 视图装饰器应该放到最外层1.3所实现的装饰器要返回视图函数的返回值二、动态路由1. 用url匹配2. 通过传参…

【Python】文件夹的常用操作

上一篇文章主要讲了Python中&#xff0c;读写文件的常用操作&#xff0c;今天这篇文章主要讲的是关于文件夹的一些常用操作&#xff1a; 关于文件的操作&#xff0c;需要导入包&#xff1a;import os 文件操作&#xff1a; #1.创建相对路径的空文件&#xff0c;如果已有文件…

Python 中的range(),arange()函数

1.range()返回的是range object&#xff0c;而np.arange()返回的是numpy.ndarray() range 尽可用于迭代&#xff0c;而 np.arange 作用远不止于此&#xff0c;它是一个序列&#xff0c;可被当做向量使用。 2.range()不支持步长为小数&#xff0c;np.arange()支持步长为小数 3.两…

SyntaxError: Non-UTF-8 code starting with ‘\xe2‘ 今天是小白上线的一天

打代码的时候第一行的utf-8注释居然空了个格 # coding utf-8估计是甜甜的恋爱想傻了&#xff0c;我居然还去查自己错哪里了&#xff0c;还说我的编码是对的鸭 正确输入&#xff1a; # codingutf-8

【Python爬虫】Python3+selenium环境配置

在我们爬虫爬网过程中&#xff0c;我们需要用到Python3selenium&#xff0c;Selenium是一个自动化测试工具&#xff0c;利用它我们可以驱动浏览器执行特定的动作&#xff0c;如点击、下拉等操作。对于一些JavaScript渲染的页面来说&#xff0c;这种抓取方式非常有效。 文章参考…

numpy 数组与矩阵的乘法理解

1. 当为array的时候&#xff0c;默认d*f就是对应元素的乘积&#xff0c;multiply也是对应元素的乘积&#xff0c;dot&#xff08;d,f&#xff09;会转化为矩阵的乘积&#xff0c; dot点乘意味着相加&#xff0c;而multiply只是对应元素相乘&#xff0c;不相加 2. 当为mat的时候…

(AU/PS)Adobe Audition CC.exe -系统错误 由于找不到MSVCP120.dll,无法继续执行代码。重新安装程序可能会解决此问题。

bug简直难过报错情况&#xff1a;由于找不到MSVCP120.dll&#xff0c;无法继续执行代码。重新安装程序可能会解决此问题。最终解决办法心得体会https://blog.csdn.net/hanhanwanghaha宝藏女孩 欢迎您的关注&#xff01; 欢迎关注微信公众号&#xff1a;宝藏女孩的成长日记 让这…

【数据库】Window环境安装MySQL Server 5.7.21

正常我们在mysql官网下载安装的MySQL比较大&#xff0c;因为它集成了好多东西&#xff0c;尽管方便&#xff0c;但是东西比较多&#xff0c;有些我们可能不想要&#xff0c;这时我们可以直接下载单个MySQL Server安装&#xff0c;所以这篇文章主要介绍的就是在window环境下安装…

产品经理:论项目计划有多重要?——软件项目管理

凡事预则立&#xff0c;不预则废前言一、论安迪特质与项目经理的共通性二、个人感想三、我的产品经理实习笔试前言 昨天杨老师上了一让我记忆很深刻的课&#xff0c;就是项目计划的重要性&#xff0c;以《肖申克的救赎 》为例: 《肖申克的救赎 》的背景是20世纪30年代&#xff…

Python开发中有可能遇到的套接字重复使用错误

PyCharm开发中有可能遇到的套接字重复使用错误 windows下在PyCharm中执行python代码&#xff0c;如果源文件被修改后&#xff0c;执行窗口中的运行状态会被终结&#xff0c;重启时有可能报如下的错误&#xff1a; OSError: [WinError 10048] 通常每个套接字地址(协议/网络地址/…

Android开发环境配置介绍

在我们进行AppiumAndroid进行自动化测试时&#xff0c;我们需要安装android_sdk环境&#xff0c;安装过程发现Android SDK&#xff0c;Android studio&#xff0c;AVD Manager&#xff0c;SDK Manager等名词&#xff0c;本篇文章主要介绍的就是Android开发环境的搭建&#xff0…

python3 struct.pack方法报错argument for 's' must be a bytes object

在python3下使用struct模块代码 fileHead struct.pack(128sl, os.path.basename(filePath),os.stat(filePath).st_size); 1 抛出异常&#xff1a; argument for s must be a bytes object必须要是字节类型。 1 解决办法&#xff1a; 把字符串的地方转为字节类型,还要要先转…

python——百钱买百鸡:一只公鸡5块钱,一只母鸡3块钱,三只小鸡1块钱,现在要用一百块钱买一百只鸡,问公鸡、母鸡、小鸡各多少只?

学习《python程序设计教程》的时候&#xff0c;遇到了这个问题&#xff0c;觉得还蛮好玩的&#xff1a; 百钱买百鸡&#xff1a;一只公鸡5块钱&#xff0c;一只母鸡3块钱&#xff0c;三只小鸡1块钱&#xff0c;现在要用一百块钱买一百只鸡&#xff0c;问公鸡、母鸡、小鸡各多少…

以知乎为例子来说明MVC是个啥

记得当时了解Web开发的MVC&#xff08;Model-View-Controller&#xff09;模式后&#xff0c;有一种心血喷涌的感觉&#xff0c;觉得太有意思了&#xff08;程序员别喷&#xff0c;我就是这么没见过世面&#xff09;。我们以知乎为例子来说明MVC是个啥&#xff1a;每个人的主页…

C/S架构网络聊天软件——Java Chat Application 用java做一个聊天机器人

Fighting!一、C/S概念1.1 什么是C/S1.2 C/S与B/S的区别二、主页面三、介绍四、特征五、jServer六、jMessenger七、使用代码7.1 导入项目后报错情况7.2 解决办法一、C/S概念 1.1 什么是C/S C/S分布式模式&#xff0c;是计算机用语。C是指Client&#xff0c;S是指Server&#xf…

python库安装错误 in _error_catcher解决之镜像安装

pip install grpcio-tools 1、出现如下错误&#xff1a; Traceback (most recent call last): File "d:\usedtool\python\lib\site-packages\pip\_vendor\urllib3\response.py", line 302, in _error_catcher yield File "d:\usedtool\python\lib\sit…

【文章】浅相遇,薄相知,淡相守,终难忘

浅相遇 人生犹如一场戏&#xff0c;在每一个转折点&#xff0c;总有意想不到的邂逅。 有的相遇成歌&#xff0c;注定了在这绻绻红尘中&#xff0c;相携而去。有的转身为念&#xff0c;注定了行色匆匆&#xff0c;独自而行。 其实&#xff0c;上苍是公平的。在为我们关上一扇…

学习python 正则表达式——与你同行!

正则表达式定义 又称为规则表达式&#xff0c;是一个特殊的字符序列&#xff0c;利用事先定义好的一些特定字符以及它们的组合组成一个‘规则’&#xff0c;检查一个字符串是否与这种规则匹配来实现对字符的检索、过滤、匹配、替换。正则表达式需要用到re模块&#xff0c;该模块…