1、使用randint(a,b)生成指定范围内的随机整数。randint(a,b)表示从序列range([a,b])中获取一个随机数,包括b。

>>> random.randint(0,100)
28
>>> random.randint(0,100)
36
>>> random.randint(0,100)
71

2、使用randrange(start,stop=None,step=1)生成一个随机数。

>>> random.randrange(2,100,2)
40
>>> random.randrange(2,100,2)
32
>>> random.randrange(2,100,2)
12

3、使用choice(seq)从指定序列seq中随机选1个元素

>>> random.choice(range(1,100))
10
>>> random.choice(range(1,100))
36
>>> random.choice(range(1,100))
7

4、使用sampe(seq)从指定序列seq中随机选N个元素

>>> random.sample(range(1,100),3)
[37, 47, 56]
>>> random.sample(range(1,100),3)
[19, 32, 11]
>>> random.sample(range(1,100),3)
[84, 30, 49]
>>>

如果需要生成字母和数字组成的验证码,可以使用如下:

>>> ''.join(random.sample(string.ascii_letters + string.digits, 4))
'bqGf'
>>> ''.join(random.sample(string.ascii_letters + string.digits, 4))
'pMvg'
>>> ''.join(random.sample(string.ascii_letters + string.digits, 4))
'B5ou'

5、原地随机打乱序列元素

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

6、使用random()生成0-1之间的浮点数值

>>> random.random()
0.5709691034543324
>>> random.random()
0.5198180756095951
>>> random.random()
0.38801983116644256

7、使用getrandbits()生成N个比特位表示的整数

>>> random.getrandbits(16)
17455L
>>> random.getrandbits(16)
6084L
>>> random.getrandbits(16)
23077L

[ Python入门教程 ] Python生成随机数模块(random)使用方法的更多相关文章

  1. [ Python入门教程 ] Python中JSON模块基本使用方法

    JSON (JavaScript Object Notation)是一种使用广泛的轻量数据格式,Python标准库中的json模块提供了一种简单的方法来编码和解码JSON格式的数据.用于完成字符串和p ...

  2. [ Python入门教程 ] Python中日期时间datetime模块使用实例

    Python中datetime模块提供强大易用的日期处理功能,用于记录程序操作或修改时间.时间计算.日志时间显示等功能.datatime模块重新封装了time模块,提供的类包括date.time.da ...

  3. boost.python入门教程 ----python 嵌入c++

    Python语言简介 Python是一种脚本语言.以开放的开发接口和独特的语法著称.尽管Python在国内引起注意只有几年的时间,但实际上Python出现于上世纪90年代(据www.python.or ...

  4. [ Python入门教程 ] Python基础语法

    Python的语法非常简练,因此用Python编写的程序可读性强.容易理解.本章将介绍Python的基本语法和概念. Python文件类型 1.源代码.Python的源代码的扩展名以py结尾,可直接运 ...

  5. [ Python入门教程 ] Python字典数据类型及基本操作

    字典是Python中重要的数据类型,字典是由"键-值"对组成的集合,"键-值"对之间用逗号隔开,包含在一对花括号中.字典中的"值"通过&qu ...

  6. [ Python入门教程 ] Python中日志记录模块logging使用实例

    python中的logging模块用于记录日志.用户可以根据程序实现需要自定义日志输出位置.日志级别以及日志格式. 将日志内容输出到屏幕 一个最简单的logging模块使用样例,直接打印显示日志内容到 ...

  7. [ Python入门教程 ] Python文件基本操作_shutil模块

    shutil模块是对os模块中文件操作的补充,提供文件和目录的移动.复制.打包.压缩.解压等功能 shutil常用函数   shutil.copyfile(src, dst)   复制文件, 如果ds ...

  8. [ Python入门教程 ] Python的控制语句

    Python控制语句由条件语句.循环语句构成.控制语句根据条件表达式控制程序的流转.本章将介绍Python中控制语句的基本语法. 条件判断语句 (1)if条件语句 if语句用于检测某个条件是否成立.如 ...

  9. [ Python入门教程 ] Python文件基本操作

    本文将python文件操作实例进行整理,以便后续取用. 文件打开和创建 Python中使用open()函数打开或创建文件.open()的声明如下: open(name[, mode[, bufferi ...

随机推荐

  1. C lang:The smallest negative plus one equals the largest positive

  2. Android 无源码smail进行debug

    待调试项目在AndroidManifest.xml中debugable=true 参照此处:https://blog.csdn.net/ausboyue/article/details/8018918 ...

  3. 浅谈——MySQL存储引擎

    博文大纲: 一.MyISAM存储引擎: 二.InnoDB存储引擎: 三.Memory存储引擎特点: 四.如何选择合适的存储引擎? 前言 数据库存储引擎是数据库底层软件组件,数据库管理系统(DBMS)使 ...

  4. 数据库事务系列-MySQL跨行事务模型

    说来和MySQL倒是有缘,毕业的第一份工作就被分配到了RDS团队,主要负责把MySQL弄到云上做成数据库服务.虽说整天和MySQL打交道,但说实话那段时间并没有很深入的理解MySQL内核,做的事情基本 ...

  5. i2c中start和restart的区别【转】

    有的硬件芯片提供了一个个寄存器,供我们很好的操作i2c,但是,在用的时候,我们是不知道他到地是怎么操作的,下边,我就探讨下i2c中的start和restart的区别. start是在scl是高电平的时 ...

  6. PS各种行业文件创建

    ps可以运用于:印刷.喷绘.网络等行业. 印刷 创建的印刷文件需要修改为毫米为单位,分辨率300以上,CMYK颜色格式: 16开的尺寸为:210*285mm:但在印刷之后,剪裁需要留出出血位,上下左右 ...

  7. HTTP 请求夹带(smuggling)攻击

    什么是HTTP请求夹带(smuggling)攻击 HTTP请求走私是一种干扰网站处理从一个或多个用户接收的HTTP请求序列的方式的技术. 请求夹带漏洞危害,允许攻击者绕过安全控制,获取对敏感数据的未授 ...

  8. 深挖计算机基础:趣谈Linux操作系统学习笔记

    参考极客时间专栏<趣谈Linux操作系统>学习笔记 核心原理篇:内存管理 趣谈Linux操作系统学习笔记:第二十讲 趣谈Linux操作系统学习笔记:第二十一讲 趣谈Linux操作系统学习笔 ...

  9. [译]Vulkan教程(10)交换链

    [译]Vulkan教程(10)交换链 Vulkan does not have the concept of a "default framebuffer", hence it r ...

  10. mesos-slave启动不起来

    刚开始时候的状态 后来装了docker后