random 模块
Posted xie仗剑天涯
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了random 模块相关的知识,希望对你有一定的参考价值。
random 模块包含许多随机数生成器,用于生成随机数
使用 random 模块获得随机数字
1. random.random()用于生成一个0到1的随机符点数: 0 <= n < 1.0
import random print random.random() # 0.403805661236
2. random.uniform(a,b)用于生成一个指定范围内的随机符点数,两个参数其中一个是上限,一个是下限。如果a > b,则生成的随机数n: a >= n >= b。如果 a <b, 则 b <= n <= a。
print random.uniform(10,20) # 12.8610835364 print random.uniform(20,10) # 12.5624740236
3. random.randint(a,b)用于生成一个指定范围内的整数,a >= b
print random.randint(100,1000) # 997
4. random.randrange(a,b,n) 从指定范围内,按指定基数递增的集合中 获取一个随机数
print random.randrange(100,1000,2) # 828
5. random.choice从序列中获取一个随机元素
print random.choice(("welcome","to","python")) # welcome
6. random.shuffle 于将一个列表中的元素打乱
A = ["1","2","3","welcome","to","python"] random.shuffle(A) print (A) # [‘2‘, ‘welcome‘, ‘3‘, ‘to‘, ‘1‘, ‘python‘]
7. random.sample 从指定序列中随机获取指定长度的片断。sample函数不会修改原有序列
L = [11,22,33,44,55,66,77,88,99] L5 = random.sample(L,5) print (L5) print (L) # [33, 66, 88, 44, 99] # [11, 22, 33, 44, 55, 66, 77, 88, 99]
8. 生成6位随机数
import random list = [] for i in range(4): if i == 0 or i == 1: num = random.randrange (0,10) list.append(str(num)) temp = random.randrange (65,91) c = chr(temp) list.append(c) result = "".join(list) print (result) # 0H9MKI
9. 使用 random 模块生成高斯分布随机数
import random histogram = [0] * 20 for i in range(1000): i = int(random.gauss(5,1) * 2) histogram[i] += 1 m = max(histogram) for j in histogram: print "*" * (j * 50 / m) # *** # ********* # ************************ # ************************************************ # ************************************************** # ********************************************** # ************************************** # ****************************** # *********** # ****
以上是关于random 模块的主要内容,如果未能解决你的问题,请参考以下文章