Python3学习之路~5.3 random模块
random模块常用方法:
import random # 随机数
print(random.random()) # 生成一个0到1的随机浮点数,0 <= n < 1.0
print(random.uniform(1,10)) # 生成一个1到10的随机浮点数,1.0 <= n < 10.0
print(random.randint(1,2)) # 生成一个指定范围内的随机整数,a <= n <= b
print(random.randrange(1,10)) # 从指定范围内,按指定基数递增的集合中获取一个随机数
print(random.randrange(1,10,2)) # 从[1,3,5,7,9]中获取一个随机数,其结果等效于random.choice(range(1,10,2)) '''
random.choice(sequence):从序列中获取一个元素,参数sequence表示一个有序类型。
这里要说明一下,sequence在Python中不是一种特定的类型,而是泛指一系列的类型。
list,tuple,字符串都属于sequence。下面是一些例子
'''
print(random.choice('学习Python')) # P
print(random.choice(['My','name','is','Alice'])) # My
print(random.choice(('tuple','list','dict'))) # tuple print(random.sample([1,2,3,4,5],3)) # [1,2,5] 从指定序列中随机获取指定长度的片段
list=[1,2,3,4,5]
random.shuffle(list) #打乱顺序
print(list) # [5, 4, 1, 3, 2]
实际应用
# 实际应用:
# 随机整数
print(random.randint(0,99)) # # 随机选取0-100间的偶数
print(random.randrange(0,101,2)) #
import random
# 随机浮点数
print(random.random()) # 0.3399543844248226
print(random.uniform(1,10)) # 7.941476566194736 # 随机字符
print(random.choice('abcdefg!@#$%^&*')) # a # 多个字符中选取特定数量的字符
print(random.sample('abcdefghij',3)) # ['c', 'j', 'g'] # 随机选取字符串
print(random.choice(['apple','pear','pench','orange'])) # pear # 洗牌
items = [1,2,3,4,5,6]
print(items) # [1, 2, 3, 4, 5, 6]
random.shuffle(items)
print(items) # [3, 5, 2, 6, 1, 4]
import random checkcode = '' for i in range(4):
current = random.randrange(0,4)
if current == i:
tmp = chr(random.randint(65,90)) #65-90在ASCII码中代表A-Z
else:
tmp = random.randint(0,9)
checkcode += str(tmp) print(checkcode)
生成随机验证码
Python3学习之路~5.3 random模块的更多相关文章
- Python3学习之路~9.1 paramiko模块:实现ssh执行命令以及传输文件
我们一般使用linux的时候,都是在Windows上安装一个ssh客户端连接上去.那么从一台linux如何连接到另一条linux呢?使用ssh命令即可,因为每台linux机器自己都有一个ssh客户端. ...
- Python3学习之路~5.5 sys模块
用于提供对解释器相关的操作 sys.argv 命令行参数List,第一个元素是程序本身路径 sys.exit(n) 退出程序,正常退出时exit(0) sys.version 获取Python解释程序 ...
- Python3学习之路~5.13 re模块 正则表达式
re模块用于对python的正则表达式的操作. 常用正则表达式符号 字符数字: . 匹配除换行符以外的任意字符,即[^\n] \s 匹配任意空白符(如\t.\n.\r ) \S 匹配任意非空白符 \w ...
- Python3学习之路~5.11 configparser模块
用于生成和修改常见配置文档,当前模块的名称在 python 2.x 版本中为 ConfigParser, python 3.x 版本中变更为 configparser. 来看一个好多软件的常见文档格式 ...
- Python3学习之路~5.10 PyYAML模块
Python也可以很容易的处理ymal文档格式,只不过需要安装一个模块,参考文档:http://pyyaml.org/wiki/PyYAMLDocumentation
- Python3学习之路~5.8 shelve模块
shelve模块是一个简单的k,v将内存数据通过文件持久化的模块,可以持久化任何pickle可支持的python数据格式 import shelve import datetime name = [& ...
- Python3学习之路~5.4 os模块
用于提供系统级别的操作 os.getcwd() 获取当前工作目录,即当前python脚本工作的目录路径 os.chdir("dirname") 改变当前脚本工作目录:相当于shel ...
- Python3学习之路~0 目录
目录 Python3学习之路~2.1 列表.元组操作 Python3学习之路~2.2 简单的购物车程序 Python3学习之路~2.3 字符串操作 Python3学习之路~2.4 字典操作 Pytho ...
- Python3学习之路~5.12 hashlib & hmac & md5 & sha模块
hashlib模块用于加密相关的操作,3.x里代替了md5模块和sha模块,主要提供 SHA1, SHA224, SHA256, SHA384, SHA512 ,MD5 算法 import md5 h ...
随机推荐
- 关于tomcat7服务下面js无法获取JSESSIONID的cookie信息
http://tomcat.apache.org/tomcat-5.5-doc/config/context.html Does anyone know what changed in the con ...
- python 截取 取出一部分的字符串
下面是split截取获得 >>> str = 'http://manualfile.s3.amazonaws.com/pdf/gti-chis-1-user-9fb-0-7a05a5 ...
- python单引号(')、双引号(")、三引号(''',""")
python对字符串的表示方法比c更有灵活性,但是也更难理解. 为了在平时使用.看代码过程中对着单引号(').双引号(").三引号(''',""")不混淆,知道 ...
- Spring.NET依赖注入框架学习--实例化容器常用方法
Spring.NET依赖注入框架学习---实例化容器常用方法 本篇学习实例化Spring.NET容器的俩种方式 1.通过XmlObjectFactory创建一个Spring.NET容器 IResour ...
- Maven传递依赖的坑:父pom中dependencyManagement版本优先级高于传递依赖版本
一.由来 之前同事问了个问题,就是当前工程为spring boot项目,假设版本号为2.0.3 这个项目中依赖了一个spring boot项目依赖(先别管为啥有这么奇葩的依赖,这个版本是1.5.9). ...
- ftp服务器Serv-U 设置允许自动创建不存在的目录
一.由来 最近改写了项目中ftp上传部分的代码. 用到的组件为: <dependency> <groupId>commons-net</groupId> <a ...
- mui---取消掉默认加载框
我们在进行打开页面新页面的时候,在APP中会在中间有一个加载框,考虑到用户体验,要取消掉,具体方法是,对openWindow进行配置: 具体参考:http://dev.dcloud.net.cn/mu ...
- day_6.6 py
Tftp 下载器演示 2018-6-6 14:11:09 #!/usr/bin/env python #!--*--coding:utf-8 --*-- #!@Time :2018/6/6 11:55 ...
- 洛谷P1316 丢瓶盖【二分】【贪心】
题目:https://www.luogu.org/problemnew/show/P1316 题意: 给定a个点的坐标(在一条直线上),现在要选b个点,问这b个点的最近距离的最大值是多少. 思路: 感 ...
- nvidia-smi failed because it couldn't communicate with the nvidia driver
Ubuntu装好CUDA之后过段时间提示NVIDIA-SMI has failed because it couldn't communicate with the NVIDIA driver. NV ...