random 模块实现了各种分布的伪随机数生成器。可以用于模拟或者任何产生随机输出的程序。对于整数,从范围中有统一的选择。对于序列,存在随机元素的统一选择、用于生成列表的随机排列的函数、以及用于随机抽样而无需替换的函数。
- 命令简单介绍
1、random.random() — 生成一个从 0.0(包含)到 1.0(不包含)之间的随机浮点数;
2、random.uniform(a, b) — 生成一个范围为 a≤N≤b 的随机数,随机数类型是浮点数;
3、random.randint(a, b) — 生成一个范围为 a≤N≤b 的随机数,随机数的类型是整形,注意与 random.uniform(a, b)区别;
4、random.sample(seq, k) — 从 seq 序列中随机抽取 k 个独立的元素;
5、random.choice(seq) — 从 seq 序列中随机抽取一个元素,如果 seq 为空,则引发 IndexError 异常;
6、random.randrange(start, stop, step) — 返回从 start 开始到 stop 结束、步长为 step 的随机数(可以用该方法返回随机偶数或者奇数)
- 常用命令
#!/usr/bin/python
# -*- coding:utf-8 -*-
import random
import string
print(random.random()) # 生成随机数字 0-1之间
print(random.randint(1,10)) # 产生 1 到 10 的一个整数型随机数
print(random.uniform(1.1,5.4)) # 产生 1.1 到 5.4 之间的随机浮点数,区间可以不是整数
print(random.randrange(1,100,2) ) # 生成从1到100的间隔为2的随机整数
#随机字符
print(random.choice('tomorrow')) # 从序列中随机选取一个元素
# 多个字符中生成指定数量的随机字符:
print(random.sample('zyxwvutsrqponmlkjihgfedcba',6))
#从a-zA-Z0-9生成指定数量的随机字符:
ran_str = ''.join(random.sample(string.ascii_letters string.digits,8))
print(ran_str)
# 多个字符中选取指定数量的字符组成新字符串:
print(''.join(random.sample(['z','2','3','a','B','Y','c','d','e','h','i'],5)))
#打乱排序
items = [1,2,3,4,5,6,7,8,9]
print(items)
random.shuffle(items)
print(items)
以上笔记,供临时查看学习。~~