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 环境中运行一下,观察它们的效果,这样你会更容易理解这些功能的用途和效果。

相关推荐
凛铄linshuo12 分钟前
爬虫简单实操2——以贴吧为例爬取“某吧”前10页的网页代码
爬虫·python·学习
牛客企业服务15 分钟前
2025年AI面试推荐榜单,数字化招聘转型优选
人工智能·python·算法·面试·职场和发展·金融·求职招聘
charlie11451419127 分钟前
深入理解Qt的SetWindowsFlags函数
开发语言·c++·qt·原理分析
胡斌附体27 分钟前
linux测试端口是否可被外部访问
linux·运维·服务器·python·测试·端口测试·临时服务器
likeGhee1 小时前
python缓存装饰器实现方案
开发语言·python·缓存
whoarethenext1 小时前
使用 C++/Faiss 加速海量 MFCC 特征的相似性搜索
开发语言·c++·faiss
项目題供诗1 小时前
黑马python(二十五)
开发语言·python
读书点滴1 小时前
笨方法学python -练习14
java·前端·python
慌糖2 小时前
RabbitMQ:消息队列的轻量级王者
开发语言·javascript·ecmascript
笑衬人心。2 小时前
Ubuntu 22.04 修改默认 Python 版本为 Python3 笔记
笔记·python·ubuntu