Python测试开发基础(三)---random模块

什么是 `random` 模块?

`random` 是 Python 自带的一个模块,这个模块帮你做一些"随机"的事情。比如,你想让计算机帮你随机选一个数字、打乱一组数据的顺序,或者从一堆东西里随机挑一个,`random` 模块都可以做到。

如何使用 `random` 模块?

在使用 `random` 模块之前,你需要先把它导入到你的程序中。可以用下面的代码来导入:

```python

import random

```

导入后,你就可以使用 `random` 模块提供的各种功能了。

常用功能

1. 生成随机小数

你想要一个 0 到 1 之间的随机小数吗?`random.random()` 就能做到!

```python

import random

生成一个 0 到 1 之间的随机小数

random_number = random.random()

print(random_number) # 比如输出: 0.3744

```

2. 生成随机整数

如果你想要一个随机的整数,比如从 1 到 10 之间,使用 `random.randint(a, b)` 就行了。

```python

import random

生成一个 1 到 10 之间的随机整数

random_integer = random.randint(1, 10)

print(random_integer) # 比如输出: 7

```

3. 随机选择一个元素

假设你有一组水果的名字,想随机选一个,`random.choice(seq)` 就可以帮你做到。

```python

import random

fruits = ['apple', 'banana', 'cherry', 'date']

随机选择一个水果

random_fruit = random.choice(fruits)

print(random_fruit) # 比如输出: 'banana'

```

4. 随机打乱顺序

有时候,你可能想打乱一组数据的顺序,比如你有一副牌,想随机打乱它。`random.shuffle(seq)` 就能帮你把顺序打乱。

```python

import random

cards = ['ace', 'king', 'queen', 'jack']

打乱这副牌的顺序

random.shuffle(cards)

print(cards) # 比如输出: ['queen', 'ace', 'jack', 'king']

```

5. 从一组数据中随机挑选多个元素

假如你有一个班级名单,想随机挑选三名同学回答问题,你可以用 `random.sample(seq, k)` 来实现。

```python

import random

students = ['Alice', 'Bob', 'Charlie', 'Diana', 'Eve']

随机挑选3个同学

random_students = random.sample(students, 3)

print(random_students) # 比如输出: ['Charlie', 'Eve', 'Alice']

```

6. 使用种子让随机结果可预测

通常,每次运行随机函数都会得到不同的结果。但如果你想让每次运行都得到相同的随机结果,可以使用 `random.seed()`。

```python

import random

设置随机种子

random.seed(42)

print(random.random()) # 每次运行都会输出相同的结果,比如:0.6394267984578837

```

总结

`random` 模块让你可以轻松地生成随机数、随机选择、随机打乱等。对于编程新手来说,这个模块非常有用,特别是在你想让程序有一点"随机性"时。

你可以试着把这些代码在你的 Python 环境中运行一下,观察它们的效果,这样你会更容易理解这些功能的用途和效果。

相关推荐
User_芊芊君子6 分钟前
【Java面试题】——this 和 super 的区别
java·开发语言
柴薪之王、睥睨众生7 分钟前
(自用)Java学习-5.8(总结,springboot)
java·开发语言·spring boot·学习·mybatis
牛马baby7 分钟前
Java高频面试之并发编程-17
java·开发语言·面试
让我们一起加油好吗8 分钟前
【C++】模板(初阶)
开发语言·c++·visualstudio·模板·泛型编程
灏瀚星空1 小时前
基于Python的量化交易实盘部署与风险管理指南
开发语言·python
Run_Teenage1 小时前
C++类和对象:运行符重载、取地址运算符重载、const 修饰的类如何作为参数
开发语言·c++
一只小bit1 小时前
More Effective C++:改善编程与设计(上)
开发语言·c++·方法·技巧
钢铁男儿2 小时前
C# 方法(栈帧)
开发语言·c#
Amo Xiang3 小时前
《100天精通Python——基础篇 2025 第18天:正则表达式入门实战,解锁字符串处理的魔法力量》
python·正则表达式·re