python中random模块的用法
random模块
Python标准库中的random函数,可以生成随机浮点数、整数、字符串,甚至帮助你随机选择列表序列中的一个元素,打乱一组数据等。
random中的一些重要函数的用法
1 ) random() 返回0<=n<1之间的随机实数n;
2 ) choice(seq) 从序列seq中返回随机的元素;
3 ) getrandbits(n) 以长整型形式返回n个随机位;
4 ) shuffle(seq[, random]) 原地指定seq序列;
5 ) sample(seq, n) 从序列seq中选择n个随机且独立的元素;
函数的详细介绍和实现:
1.random.random()函数是这个模块中最常用的方法了,它会生成一个随机的浮点数,范围是在0.0~1.0之间。
import random
int1 = random.random()
print(int1)
print("%.2f" % int1)
运行结果如下:
0.9358379700863245
0.94
2.random.uniform()正好弥补了上面函数的不足,它可以设定浮点数的范围,一个是上限,一个是下限(random.random()不能设置上、下限,且范围仅在0到1之间)。
import random
int1 = random.uniform(1, 22)
print(int1)
print("%.2f" % int1)
运行结果:
15.960067667477649
15.96
3.random.randint()随机生一个整数int类型,可以指定这个整数的范围,同样有上限和下限值。
4.random.choice()可以从任何序列,比如list列表中,选取一个随机的元素返回,可以用于字符串、列表、元组等。
import random
foo = ['包袱', '剪刀', '锤']
str1 = random.choice(foo)
dr1 = input("请输入你的操作:")
print("电脑的操作:%s" % str1)
if str1 == "包袱":
if dr1 == str1:
print("平局")
elif dr1 == "剪刀" :
print("恭喜你赢了")
else:
print("恭喜电脑赢了")
elif str1 == "剪刀":
if dr1 == str1:
print("平局")
elif dr1 == "锤" :
print("恭喜你赢了")
else:
print("恭喜电脑赢了")
else:
if dr1 == str1:
print("平局")
elif dr1 == "包袱":
print("恭喜你赢了")
else:
print("恭喜电脑赢了")
5.random.shuffle()如果你想将一个序列中的元素,随机打乱的话可以用这个函数方法。
6random.sample()可以从指定的序列中,随机的截取指定长度的片断,不作原地修改。