zl程序教程

您现在的位置是:首页 >  后端

当前栏目

在Python中生成随机数据

Python数据 生成 随机
2023-06-13 09:15:12 时间

标签:Python

本文展示如何轻松地在Python中生成随机和唯一的数据,这里将使用一个名为faker的库。

安装库

首先,使用pip安装库:

pip install faker

在Python中生成随机数据

要使用Python faker库生成随机数据,只需要一个faker对象,它可以让我们生成随机名称、地址,甚至(当然是假的)信用卡号和航空公司信息,如下图1所示。

图1

可再现的随机数据

注意,由于库的随机性,每次运行上述代码时,都会得到不同的结果。因此,在终端运行代码时,会得到不同的名称。

像许多随机数生成器一样,可以使用seed来确保其他人可以复制结果。因此,运行下面的2行代码以再现以下结果:

图2

随机和唯一数据

Faker对象具有属性.unique,可以使用它在Faker实例的生命周期内帮助生成唯一的数据。

让我们测试一下,下面的代码证明了所有10000个随机名称都是唯一的。注意,我们首先使用列表解析创建一个包含10000个随机名称的列表,然后将该列表转换为集,该集将删除任何重复值。如下图3所示,所有生成的10000个名称都是唯一的。

图3

国外随机数据

Faker不仅可以生成英语数据,还可以生成其他语言和地区的数据。默认情况下,faker中的区域设置为US/English。我们可以通过调用.locales属性来检查。

图4

为了在随机数生成器中添加多个区域设置,只需要将区域设置列表传递到Faker()构造函数中。

图5

什么样的随机数据可用?

如何找出faker可以生成什么样的随机数据呢?这是一个相当长的列表,可以通过调用Faker.__dir__()找到。大约有300个!

图6

扩展随机数据

虽然faker已经提供了各种各样的随机数据,但网上一些很酷的家伙通过扩展faker可以提供的随机数据超越了限制。需要安装额外的库来使用这些其他的随机数据,这些数据被称为“providers”,并作为基本的Faker库的附加组件。下面是几个有趣的例子:

图7

具体看看faker_airtravel,看看它是如何工作的。同样,我们使用pip来安装它。

pip install faker_airtravel

需要使用faker.add_provider()方法将提供者(provider)添加到Faker对象。然后,可以调用.airport_object()方法,该方法在基本的Faker库中不存在。

图8

为了找到AirTravelProvider对象中可用的随机数据,可以再次使用dir技巧:

dir(AirTravelProvider)

生成随机Pandas数据集

使用faker和faker_airtravel库为航班乘客生成一些随机数据。这是一种生成随机数据的非常方便的方法。

图9

注:本文学习整理自pythoninoffice.com,供有兴趣的朋友参考。