一.random

1.生成伪随机数

2.伪随机数是可预测的,严格意义上不具有随机性质,通常用数学公式的方法(比如统计分布,平方取中等)获得

3.正如数列需要有首项,产生伪随机数需要一个初值用来计算整个序列,这个初值被称为“种子”。种子可以是一个固定的值,也可以是根据当前系统状态确定的值。

4.https://docs.python.org/3.5/library/random.html?highlight=random#module-random

二.random方法

1.seed([]):改变随机数生成器的种子seed

 #seed() 方法改变随机数生成器的种子,可以在调用其他随机模块函数之前调用此函数。。
random.seed()
print ("使用默认种子生成随机数:", random.random())#变化
random.seed(10)
print ("使用整数种子生成随机数:", random.random())#不变
random.seed("hello",2)
print ("使用字符串种子生成随机数:", random.random())#不变 ----------------------------------------------------------------
使用默认种子生成随机数: 0.8182785911795667
使用整数种子生成随机数: 0.5714025946899135
使用字符串种子生成随机数: 0.3537754404730722

seed

2.getrandbits()返回一个具有k个 随机位的Python整数

 #getrandbits返回一个具有k个 随机位的Python整数
#输入8=2*3,返回一个最多3个数字组成的整数
print(random.getrandbits(8))
------------------------------------
248

getrandbit

3.生成单个随机整数

(1)randrange():从指定范围内,按指定基数递增的集合中获取一个随机数,基数缺省值为1;[ )

 #randrange(start, stop[, step])
print(random.randrange(100))# 从 [ 0,100) 选取一个随机数
print(random.randrange(1, 100, 2))# 从 [1,100) 中选取一个奇数
------------------------------------------------------------------------
63
91

randrange()

(2)randint(x,y):随机生一个整数int类型,可以指定这个整数的范围;[ ]

 #randint(x,y)
print(random.randint(1000,1838))#从【1000,1838】中选一个整数
---------------------------------------
1410

randint

4.序列的相关随机函数

(1)choice() :从非空序列的元素中随机挑选一个元素

  #choice()方法返回一个列表,元组或字符串的随机项。
print(random.choice([1,5,6,7,8,8,7]))
print(random.choice('asadad '))
-----------------------------------------------
5
a

choice

(2)shuffle():将序列的所有元素随机排序

 #shuffle()方法将序列的所有元素随机排序。
list=[20,15,38,22,7]
random.shuffle(list)
print(list)
-------------------------------
[15, 22, 38, 20, 7]

shurffle

(3)sample(sequence,length) 可以从指定的序列中,随机的截取指定长度的片断,不修改原序列。选取指定数量的字符

 #random.sample(sequence, k)从指定序列中随机获取指定长度的片断
list = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
slice = random.sample(list, 5) # 从list中随机获取5个元素,作为一个片断返回
print(slice)
print(list) # 原有序列并没有改变
-------------------------------------------
['', 'b', 'a', '']

sample

5.生成随机浮点数

(1)random():随机生成下一个浮点数,它在【0.0 , 1.0)范围内

  #random()方法返回随机生成的一个浮点数,它在[0,1)范围内。
print(random.random())
------------------------------------------------
0.7479187105035808

random

(2)uniform(x,y):随机生成下一个浮点数,它在 [x,y] 范围内

  #uniform() 方法将随机生成下一个浮点数,它在[x,y]范围内,
print(random.uniform(5, 10))
----------------------------------------------、
7.122212601550471

uniform

(3)其他,根据特定分布(比如正太分布,指数分布等)生成一个随机浮点数

最新文章

  1. 关于Android中的三级缓存
  2. BZOJ 1862: [Zjoi2006]GameZ游戏排名系统 [treap hash]
  3. 关于在aspx前台使用后台变量的问题
  4. uzqp文件的加解密
  5. TFS 强制撤销别人签出的代码
  6. SharePoint移动客户端--Rshare 中的Smart Cache
  7. C#是怎么获取窗口标题的
  8. 2013调试sql的方法
  9. jQuery Animation实现CSS3动画
  10. 【NET】WebBrowser执行脚本以及一般操作代码
  11. hadoop系列二:HDFS文件系统的命令及JAVA客户端API
  12. poi jsp xls
  13. Docker Swarm nginx 集群搭建
  14. ChIP-seq motif ROC 相关资料
  15. (拓扑)确定比赛名次 -- hdu -- 1285
  16. java中使用OpenOffice
  17. numpy多项式拟合
  18. Mybatis 搭配 阿里druid连接池 连接 oracle 或 mysql
  19. SaltStack生产案例-服务部署(redis,mysql,apache+php,haproxy+keepalived)
  20. django Form数据读取问题

热门文章

  1. 推特Twitter视频下载的2种方法
  2. 最新 吉比特java校招面经 (含整理过的面试题大全)
  3. Chocolate Eating【二分】
  4. SSH协议(1)-工作原理及过程
  5. soapUI对webservices进行压力测试
  6. [NOIP普及组2011]装箱问题
  7. 20191011-构建我们公司自己的自动化接口测试框架-Config配置
  8. Linux下/etc/login.defs文件
  9. Codeforces 1249 D2. Too Many Segments (hard version)
  10. (六)easyUI之对话框窗口