进阶第十一课 Python模块之random
random就是随机的意思,在Python中就是按照指定范围和规则,做随机取数的工作。
看下例子:
>>> import random >>> random.random() 0.8899104894509411 >>> random.random() 0.19533630110531885
1、random.random()
在0到1之间取数。
2、random.randint(a,b)
其中a和b都是整数,看例子:
>>> random.randint(1,10) 8
取数范围从1到10之间的10个整数,即范围包含a,也包含b。
3、random.choice()
>>> random.choice('Hello!')
'o'
>>> random.choice('Hello!')
'l'
>>> random.choice('Hello!')
'!'
>>> random.choice('Hello!')
'o'
>>> random.choice('Hello!')
'e'
>>> random.choice('Hello!')
'H'
>>> random.choice('Hello!')
'l'
下面这个例子,由于范围值是一个字符串,那么返回值就是字符串中的随机一个字符。再看另一个例子:
>>> random.choice([1,3,[1,2,3],(1,2,3)]) 1 >>> random.choice([1,3,[1,2,3],(1,2,3)]) (1, 2, 3) >>> random.choice([1,3,[1,2,3],(1,2,3)]) [1, 2, 3] >>> random.choice([1,3,[1,2,3],(1,2,3)]) [1, 2, 3] >>> random.choice([1,3,[1,2,3],(1,2,3)]) 1 >>> random.choice([1,3,[1,2,3],(1,2,3)]) 3 >>> random.choice([1,3,[1,2,3],(1,2,3)]) 1 >>> random.choice([1,3,[1,2,3],(1,2,3)]) (1, 2, 3)
当choice的参数是一个列表时,看下返回值。
4、random.sample()
>>> random.sample([1,3,[1,2,3],(1,2,3),1,5,7,[7,8,9],100],3) [5, 100, (1, 2, 3)] >>> random.sample([1,3,[1,2,3],(1,2,3),1,5,7,[7,8,9],100],3) [[1, 2, 3], 3, 100] >>> random.sample([1,3,[1,2,3],(1,2,3),1,5,7,[7,8,9],100],3) [[7, 8, 9], 7, 1] >>> random.sample([1,3,[1,2,3],(1,2,3),1,5,7,[7,8,9],100],3) [3, [1, 2, 3], 1] >>> random.sample([1,3,[1,2,3],(1,2,3),1,5,7,[7,8,9],100],3) [1, 5, 7]
sample后面有2个参数,即sample(a,b)。其中a是一个序列,里面都是数字组成的元素:数字、元祖和序列;b是一个整数,指定返回几个唯一值。上面的例子中参数a有两个1,但是返回的3个值不会有2个1。
5、random.randrage()
看例子:
>>> random.randrange(1,3) 2 >>> random.randrange(1,3) 2 >>> random.randrange(1,3) 2 >>> random.randrange(1,3) 2 >>> random.randrange(1,3) 2
之前已经学过range这个函数,range(1,3)的范围包含1但不包含3。
6、下面看一个例子,随机生成一个5位编码,里面有数字、大写英语字母和小写英语字母。看例子:
>>> def code():
code=''
for i in range(5):
num=random.randrange(10)
Uc=chr(random.randrange(65,91))
Dc=chr(random.randrange(97,123))
fc=random.choice([num,Uc,Dc])
code+=str(fc)
return code
>>> import random
>>> code()
'81Ve2'
>>> code()
'1Sl37'
>>> code()
'1uwpj'
>>> code()
'oqBi5'
>>>
分析一下:
1)code是一个空白字符串;作为最终的5位随机字符串,里面可以有数字和大小写字母。
2)num是0到9任意一个数字。
3)Uc是任意一个大写字母。chr()函数,是把ascii中的一个数字转换为对应的符号,65-90对应A-Z;97-122对应a-z。
4)Dc是任意一个小写字母。
5)fc是在num、Uc和Dc三级随机字符中,再随机选取一个;这样每一位都可能是数字、大写字母或者小写字母。
6)把fc加入到code中。
转载于:https://www.cnblogs.com/tuobeiwoniu/p/8680757.html
进阶第十一课 Python模块之random相关推荐
- 进阶第四课 Python模块之os
os模块,一起来看下都有哪些常用的方法,也就是有哪些函数或者功能. 首先了解一下os的组成 >>> import os >>> dir(os) ['DirEntry ...
- Python模块:Random(未完待续)
本文基于Python 3.6.5的官文random编写. random模块简介 random为各种数学分布算法(distributions)实现了伪随机数生成器. 对于整数,是从一个范围中均匀选择(u ...
- python模块之random模块
random模块 用于生成随机数 常用方法 >>> import random #随机小数 >>> random.random() # 大于0且小于1之间的小数 0 ...
- 入门第十一课 Python语句的嵌套
1.说个小故事:话说一个人买到一个治疗瘙痒的偏方,在拆开无数层的包装后,得到的只是一张写着"挠挠"的小纸条儿. 嵌套,类似于在一个语句中,嵌套另一个语句.举个栗子-_-!! 我们要 ...
- python random模块中的指令_10分钟让你掌握python编程中random模块功能使用,非常详细...
原标题:10分钟让你掌握python编程中random模块功能使用,非常详细 python作为一门高级编程语言,它的定位是优雅.明确和简单.阅读Python编写的代码感觉像在阅读英语一样,这让使用者可 ...
- Python入门(二十一)- 常见模块
二十一.常见模块 上一章介绍了Python模块的相关知识,在实际开发中,Python的很多功能都已经有了成熟的第三方实现,一般不需要开发者"重复造轮子",当开发者需要完成某种功能时 ...
- python模块调用的用法_如何使用Python语言中的random模块调用方法
Python语言中的random模块,包含了很多方法属性,可以直接调用这些方法和设置属性.根据不同的方法展示不同的内容.下面利用几个实例查看random模块中的方法,操作如下: 工具/原料 Pytho ...
- Python中的random模块
Python中的random模块用于随机数生成,对几个random模块中的函数进行简单介绍.如下: random.random() 用于生成一个0到1的随机浮点数.如: import random r ...
- python模块初始与time、datetime及random
模块初始 模块的概念(本质为一个py文件) python模块可以将代码量较大的程序分割成多个有组织的.彼此独立但又能互相交互的代码片段,这些自我包含的有组织 的代码段就是模块,模块在物理形式上表现为以 ...
最新文章
- 关于Linux下进程创建的相关知识
- Linux下覆盖目录的方法
- 【转】Mac下安装和配置Redis
- 在 Linux 命令行中使用 tcpdump 抓包
- CopyOnWriteArrayList简介
- Android UI开发第三十篇——使用Fragment构建灵活的桌面
- [深度应用]·实战掌握Dlib人脸识别开发教程
- python画一片树叶_python画一片绿叶给你
- array_multisort - 如何保持键值,不重置键值,键名保持不变
- UVALive 5903 Piece it together(二分图匹配)
- 微信小程序UI组件、开发框架、实用库...
- 转:敏捷方式scrum 方案
- lucene使用与优化
- 银河麒麟服务器无raid驱动安装处理
- linux英英词典项目,五大主流英英词典(ESL)比较使用测评报告
- 未来教育计算机二级答案,未来教育计算机二级操作题答案.docx
- 【Magick++透明图层合并】
- python 操作excel排序_python操作excel[转]
- hive 学习系列三(表格的创建create-table)
- 怎样把PDF图片旋转90度
热门文章
- 对CSS选择器的理解
- 关于spark structed stream 流中的触发trigger间隔的理解
- 这个机器人不学数据集,“纯玩”get各类家务技能,LeCun觉得很赞
- java Exception 处理汇总
- 【转】 Android常用实例—Alert Dialog的使用
- POJ 1065 Wooden Sticks(LIS,最少链划分)
- js(javascript)中__proto__和prototype解析
- BSM:左手业务,右手IT
- ubuntu8.04 升级到8.10后,apache2 不能用的解决办法
- 8月8日白暨豚宣告灭绝