random随机函数中的常用方法

1.random.random 返回一个介于左闭右开[0.0, 1.0)区间的浮点数

print(random.random())

2.random.randrange(start,stop[,step])  返回range[start,stop)之间左闭右开一个整数,可加step,跟range(0,10,2)类似

print(random.randrange(1,30,2))

3.random.randint(start,stop)  返回range[a,b]之间的一个整数,等价于然的range(a,b+1)

print(random.randint(0,1))

4.random.uniform(start,stop)  返回一个介于a和b之间的浮点数。如果a>b,则是b到a之间的浮点数。这里的a和b都有可能出现在结果中。

print(random.uniform(0,1))
print(random.uniform(1,0))

5.random.choice 从非空序列seq中随机选取一个元素。如果seq为空则弹出 IndexError异常,这里的seq可以是字符串,元祖,列表,包含有index和len方法的数据类型

print(random.choice('123'))
print(random.choice([1,2,3]))
print(random.choice((1,2,3)))

6.random.choices(population, k) 3.6版本新增。从population集群中随机抽取K个元素(可重复)

>>>print(random.choices([1,2,3],k=1))
[2] >>>print(random.choices([1,2,3],k=2))
[1, 2] >>>print(random.choices([1,2,3],k=3))
[1, 1, 1] >>>print(random.choices([1,2,3],k=4))
[2, 1, 1, 2]

7.random.sample(population, k)

从population样本或集合中随机抽取K个不重复的元素形成新的序列。常用于不重复的随机抽样。返回的是一个新的序列,不会破坏原有序列。要从一个整数区间随机抽取一定数量的整数,请使用sample(range(10000000), k=60)类似的方法,这非常有效和节省空间。如果k大于population的长度,则弹出ValueError异常。

>>>a = [1,2,3]
>>>print(random.sample(a,2))
[1, 3]
>>>print(random.sample(a,3))
[1, 3, 2]
>>>print(a)
[1, 2, 3]
>>>print(random.sample(a,4))
ValueError: Sample larger than population or is negative

8.random.shuffle()  随机打乱序列x内元素的排列顺序。只能针对可变的序列,对于不可变序列,请使用下面的sample()方法

>>>lst = [1,2,3]
>>>random.shuffle(lst)
>>>print(lst)
[1, 3, 2]

常见模块(五) random模块的更多相关文章

  1. Py修行路 python基础 (二十)模块 time模块,random模块,hashlib模块,OS及sys模块

    一.前提介绍: 可以开辟作用域的只有类,函数,和模块            for循环 if,else: 不能开辟自己的作用域 避免程序复用和重复调用,将这些写到一个.py文件中,做成一个模块,进行调 ...

  2. python第十七天---时间模块、random模块

    作完一个作业,开始新的学习: 有由今天的时间有限所有学习了以下两个模块,明天继续! 时间模块.random模块 import time #!usr/bin/env python #-*-coding: ...

  3. python常用模块之random模块

    python常用模块之random模块 在程序中很多会用到随机字符,比如登陆网站的随机验证码,通过random模块可以很容易生成随机字符串 1.random.randrange():返回1-10之间的 ...

  4. (转)python常用模块(模块和包的解释,time模块,sys模块,random模块,os模块,json和pickle序列化模块)

    阅读目录 1.1.1导入模块 1.1.2__name__ 1.1模块 什么是模块: 在计算机程序的开发过程中,随着程序代码越写越多,在一个文件里代码就会越来越长,越来越不容易维护. 为了编写可维护的代 ...

  5. [时间模块、random模块]

    [时间模块.random模块] time模块 在Python中,通常有这几种方式来表示时间: 时间戳(timestamp):通常来说,时间戳表示的是从1970年1月1日00:00:00开始按秒计算的偏 ...

  6. Python之数据加密与解密及相关操作(hashlib模块、hmac模块、random模块、base64模块、pycrypto模块)

    本文内容 数据加密概述 Python中实现数据加密的模块简介 hashlib与hmac模块介绍 random与secrets模块介绍 base64模块介绍 pycrypto模块介绍 总结 参考文档 提 ...

  7. python常用模块之-random模块

    random模块顾名思义就是生成随机数的模块. random模块有以下常见方法: 1,打印0-1之间的任意随机浮点数,不能指定区间. print(random.random()) 2,打印随机符点数, ...

  8. python学习之老男孩python全栈第九期_day019知识点总结——collections模块、时间模块、random模块、os模块、sys模块

    一. collections模块 在内置数据类型(dict.list.set.tuple)的基础上,collections模块还提供了几个额外的数据类型:namedtuple.deque.Counte ...

  9. 模块—— 序列化模块、random模块、os模块 、 sys模块、hashlib模块、collections模块

    今天我们来说说Python中的模块: 第三方模块 可以下载/安装/使用 第一步:将pip.exe 所在的目录添加到环境变量中第二步:输入pip第三步:pip install 要安装的模块名称  #pi ...

随机推荐

  1. win7下Oracle库impdp导入dmp

    第一步:创建备份文件存储目录 create or replace directory back_file as 'D:\app\yangxf\back_or_memery_file'; create ...

  2. Linux配置中文输入法(搜狗输入法)

    一.基础知识 在原生ubuntu14.04英文环境系统中只有IBus拼音,真的好难用.由于搜狗输入法确实比Linux系统下其它的中文输入法都要好用得多,所以我决定在我的Ubuntu 14.04系统中安 ...

  3. Codefoces 277 E. Binary Tree on Plane

    题目链接:http://codeforces.com/problemset/problem/277/E 参考了这篇题解:http://blog.csdn.net/Sakai_Masato/articl ...

  4. 使用qrcode输入信息生成二维码包含二维码说明信息,点击转化为图片并下载

    说明:输入汉字和数字都可以识别并展示 <body> <h2 id="h2">二维码生成</h2> <br> <span id= ...

  5. vue form表单验证

    <el-select v-model="ruleForm.region" placeholder="请选择活动区域"> <el-option ...

  6. Vnpy二次开发应用所需图标

    在针对Vnpy二次开发时,很多窗口中需要使用到“小图标” 给大家分享一个UI的专业图标网,上面资源齐全. https://www.iconfont.cn/collections?personal=1

  7. MATLAB绘图功能(1) 二维高层绘图操作

    文末源代码 部分源代码 %% 基本绘图操作 x=:*pi; y=sin(x); plot(x,y); % 第二个参数为矩阵 y1=sin(x); y2=cos(x); y3=0.002*exp(x); ...

  8. 实现mypwd&mybash&myod&读者写者

    目录: 一.mypwd 二.mybash 三.myod 四.读者.写者 一.实现mypwd 学习pwd命令 研究pwd实现需要的系统调用(man -k; grep),写出伪代码 实现mypwd 测试m ...

  9. loj#2059. 「TJOI / HEOI2016」字符串 sam+线段树合并+倍增

    题意:给你一个子串,m次询问,每次给你abcd,问你子串sa-b的所有子串和子串sc-d的最长公共前缀是多长 题解:首先要求两个子串的最长公共前缀就是把反过来插入变成最长公共后缀,两个节点在paren ...

  10. angualrjs 文本框去掉表情

    html: <textarea ng-module="dataText"></textarea> js: <script> var BQ_RAN ...