random库是用于产生并运用随机数的标准库

主要包含的有9个随机函数,分别是:

seed(), random(), randint(), getrandbits(), randrange(), uniform(),choice() shuffle(), sample()

介绍如下:

random.seed(a)

  设置初始化随机种子a

  a:随机种子,可以是整数或浮点数。

  使用random库产生随机种子,如果不设置,,则random库默认以系统时间产生当做随机种子。设置种子的好处是可以重复再现相同的随机种子。

random.random()

  生成一个[0.0, 1.0)之间的随机种子

import random
print(random.random()) -->
0.10555404538917945

random.randint(a, b)

  生成一个[a, b]之间的随机整数

  随机区间的开始值,整数。

  随机区间的结束值,随机数包含结束值整数。

import random
print(random.randint(0, 100)) -->
随机返回一个1到100的整数,例如22,34,67,54

random.getrandbits(k)

  生成一个k比特长度的随机整数。

  k:长度的整数值

import random
print(random.getrandbits(10)) -->
770
178
270
比特长度为10的随机整数

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

  生成一个[start, stop]之间以step为步数的随机整数

  start:随机区间的开始值,整数

  stop:随机区间的结束值,随机数包含结束值,整数

  step:随机区间的步长值,整数。步长值可选,如果不设定步长,默认步长为1

import random
print(random.randrange(0, 100, 2)) -->
返回一个0到100的随机偶数,整数.例如:22,46,88,48

random.uniform(a, b)

  生成一个[a, b]之间的一个随机小数。

  a:随机区间的开始值,整数或浮点数

  b:随机区间的结束值,随机数包含结束值,整数或浮点数

import random
print(random.uniform(0, 10)) -->
返回一个0到10之间的随机小数(例如:8.519225050623398)

random.choice(seq)

  从序列类型(例如列表)seq中随机返回一个元素

  seq:序列类型,例如列表类型

import random
li = [1, 3, 5, 7, 9]
print(random.choice(li)) -->
随机返回一个列表li中的元素

random.shuffle(seq)

  将序列类型seq中的元素随机排列,返回打乱后的序列(类比洗牌)

  seq:序列类型,例如列表类型

  调用该函数,序列类型seq将被改变

import random
li = [2, 4, 6, 8, 10]
random.shuffle(li)
print(li) -->
返回一个乱序的列表li
例如:[4, 2, 10, 8, 6]

random.sample(pop, k)

  从pop类型中随机选取k个元素,以列表的类型返回

  pop:序列类型,例如列表

  k:选取的个数,整数

import random
li = [1, 2, 3, 4, 5, 6, 7, 8, 9]
str = '人生苦短,我用python'
print(random.sample(li, 3))
print(random.sample(str, 2)) -->
第一行,在列表li中随机选取三个元素
第二行在字符串str中随机选取两个元素
例如:
[1, 8, 6]
['人', 'p']

  

  

random随机库的更多相关文章

  1. Boost随机库的简单使用:Boost.Random(STL通用)

    文章目录 文章目录 文章内容介绍 Boost随机库的简单使用 生成一个随机的整数 生成一个区间的平均概率随机数 按概率生成一个区间的随机整数 一些经典的分布 与STL的对比 Ref 文章内容介绍 Bo ...

  2. Chrome V8引擎系列随笔 (1):Math.Random()函数概览

    先让大家来看一幅图,这幅图是V8引擎4.7版本和4.9版本Math.Random()函数的值的分布图,我可以这么理解 .从下图中,也许你会认为这是个二维码?其实这幅图告诉我们一个道理,第二张图的点的分 ...

  3. Math.random()

    Math.random() 日期时间函数(需要用变量调用):var b = new Date(); //获取当前时间b.getTime() //获取时间戳b.getFullYear() //获取年份b ...

  4. .Net使用system.Security.Cryptography.RNGCryptoServiceProvider类与System.Random类生成随机数

    .Net中我们通常使用Random类生成随机数,在一些场景下,我却发现Random生成的随机数并不可靠,在下面的例子中我们通过循环随机生成10个随机数: ; i < ; i++) { Rando ...

  5. 随机数(random)

    需求 Random rd=new Random(); 需要十以内的随机数  (0---10) System.out.println((int)((rd.nextDouble()*100)/10)); ...

  6. python写红包的原理流程包含random,lambda其中的使用和见简单介绍

    Python写红包的原理流程 首先来说说要用到的知识点,第一个要说的是扩展包random,random模块一般用来生成一个随机数 今天要用到ramdom中unifrom的方法用于生成一个指定范围的随机 ...

  7. [LeetCode] Random Pick Index 随机拾取序列

    Given an array of integers with possible duplicates, randomly output the index of a given target num ...

  8. [LeetCode] Linked List Random Node 链表随机节点

    Given a singly linked list, return a random node's value from the linked list. Each node must have t ...

  9. [LeetCode] Copy List with Random Pointer 拷贝带有随机指针的链表

    A linked list is given such that each node contains an additional random pointer which could point t ...

随机推荐

  1. Codesys——PLCopen基本运动控制功能块的使用方法总结

    MC_Halt 在MC_MoveVelocity模式下,用MC_Halt停止其轴,当前轴的状态由 ContinuousMotion(当前转速)--->DiscreteMotion(速度不为0)- ...

  2. JavaScript Patterns 2.6 switch Pattern

    Principle • Aligning each case with switch(an exception to the curly braces indentation rule). • Ind ...

  3. 【高德地图API】Pivot控件中加载地图并禁止Pivot手势

    如题,解决方案,参考[Windows phone应用开发[20]-禁止Pivot手势]http://www.cnblogs.com/chenkai/p/3408658.html. xaml代码清单   ...

  4. Akka源码分析-Remote-Creating Actors Remotely

    在akka官网中关于远程actor交互,介绍了两种方法,一种是通过actorSelection查询,另一种是通过actorOf在远程节点创建一个actor.actorSelection我们之前的博客中 ...

  5. Eclipse设置空格代替tab

    1.点击 window->preference-,依次选择 General->Editors->Text Editors,选中右侧的 insert space for tabs;如下 ...

  6. CyclibcBarrier与CountDownLatch区别

    1.CyclibcBarrier的线程运行到某个位置后即停止运行,直到所有的线程都到达这个点,所有线程才开始运行:CountDownLatch是线程运行到某个点后,计数器-1,程序继续运行即Cycli ...

  7. C/C++常用头文件 以及简单应用介绍

    C/C++头文件一览 C #include <assert.h> //设定插入点#include <ctype.h> //字符处理#include <errno.h> ...

  8. P1538 迎春舞会之数字舞蹈

    题目背景 HNSDFZ的同学们为了庆祝春节,准备排练一场舞会. 题目描述 在越来越讲究合作的时代,人们注意的更多的不是个人物的舞姿,而是集体的排列. 为了配合每年的倒计时,同学们决定排出——“数字舞蹈 ...

  9. PHP配置步骤

    背景: 作为web前端人员,必不可少的会接触到一些服务器端的脚本语言,比如PHP.因为最近在进行相关知识的总结,同时也回顾一下PHP基础知识.这次总结先从PHP的开始说起,即PHP的配置步骤. 什么是 ...

  10. 4星|《超级技术:改变未来社会和商业的技术趋势》:AI对人友好吗

    超级技术:改变未来社会和商业的技术趋势 多位专家或经济学人编辑关于未来的预测,梅琳达·盖茨写了其中一章.在同类书中属于水平比较高的,专家只写自己熟悉的领域,分析与预测有理有据而不仅仅是畅想性质. 以下 ...