Python伪随机数模块random详解
介绍
Python自带的随机数模块为random,它可以产生伪随机数序列。其中“伪随机数”指的是,由于计算机程序的本质,所以无法真正获得绝对随机的数字。但是,这些数字在大多数情况下足够随机,足以模拟许多实际情况。
模块用法
随机整数
random模块提供了randint()方法,可以选择一个范围,在这个范围内生成一个随机整数。例如:
import random
num = random.randint(1,10)
print(num)
输出结果为:
8
随机浮点数
由于随机整数通常不足以满足一些实际需求,所以random模块还有另一个重要的方法——uniform(),它可以生成随机浮点数。例如:
import random
num = random.uniform(1.0,10.0)
print(num)
输出结果为:
4.348021739143432
随机序列
此外,random模块还有一些方法可用于生成随机序列,其用法如下:
- choice(seq):从序列seq中随机选择一个元素
- sample(seq, k):从序列seq中随机选择k个元素,生成一个列表
- shuffle(seq):洗牌,将序列seq打乱顺序
示例代码如下:
import random
# 从序列中随机选择一个元素
seq1 = ['apple', 'banana', 'orange']
print(random.choice(seq1))
# 从序列中随机选择2个元素生成列表
seq2 = ['hello', 'world', 'python', 'java', 'c++']
print(random.sample(seq2, 2))
# 将序列打乱顺序
seq3 = ['a', 'b', 'c', 'd', 'e']
random.shuffle(seq3)
print(seq3)
输出结果为:
orange
['c++', 'java']
['c', 'b', 'e', 'a', 'd']
小结
Python的random模块提供了众多随机数生成的方法,可以非常方便地满足各种需求。需要注意的是,由于生成的是伪随机数,所以无法完全保证不会重复、分布不均匀等情况。但是,random在绝大多数情况下可以满足需要,是Python中十分实用的模块之一。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Python伪随机数模块random详解 - Python技术站