python random randomn
时间: 2025-02-21 17:24:25 浏览: 37
### Python `random` 模块的用法
#### 基本功能概述
Python 的 `random` 模块提供了用于生成伪随机数的各种函数。这些函数可用于模拟赌博游戏中的骰子投掷、卡片抽取,或是实现更复杂的算法如蒙特卡洛方法。
#### 主要类与函数说明
- **种子设置**
为了能够重现相同的随机序列,在程序开始处通常会调用 `seed()` 函数来设定初始条件:
```python
import random
random.seed(10) # 使用固定的整数值作为种子
print(random.random()) # 输出固定的结果
```
- **浮点数范围内的随机值**
可以通过 `random()` 方法获得介于 0 和 1 之间的均匀分布的小数;如果想要指定上下限,则可使用 `uniform(a, b)`:
```python
print(random.uniform(1.5, 9.5)) # 返回 [1.5, 9.5] 内的一个随机实数
```
- **离散型概率分布下的整数选取**
当需要从特定区间内选出一个随机整数时,可以利用 `randint(a,b)` 或者 `randrange(start, stop[, step])` 来完成此操作:
```python
print(random.randint(3, 8)) # 包含边界值在内的闭合区间 [3, 8]
print(random.randrange(0, 10, 2)) # 开放左端点并允许步长参数 (0, 2, 4, 6, 8)
```
- **列表元素的选择**
对于已有的集合或数组类型的数据结构而言,可以直接采用 `choice(seq)` 及其变体 `choices(population, weights=None, *, cum_weights=None, k=1)` 进行单次或多轮抽样:
```python
my_list = ['apple', 'banana', 'cherry']
print(random.choice(my_list))
print(random.choices(['red', 'black'], [18, 20], k=10)) # 加权采样十个样本
```
- **洗牌操作**
有时可能希望打乱现有顺序而不改变原始容器的内容,这时就可以借助 `shuffle(x[, random])` 实现原地混排效果:
```python
cards = list(range(52))
random.shuffle(cards)
print(cards[:5])
```
以上就是关于 Python 中 `random` 模块的一些基本介绍及其典型应用场景[^1]。
阅读全文
相关推荐

















