好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

Python 造假数据咯

Python 造假数据咯

小帅b 学习python的正确姿势

你在写程序的时候,常常需要用一些假数据来测试功能,比如用户的注册,获取数据列表接口等等,总不能老是 “test..test...test your daddy ” 吧?

接下来给你介绍两个挺不错的 Python 库,专门来给你生成各种假数据的,比如人名,邮箱,手机、地址等等,你再也不用苦思冥想各种张三李四和绿你的隔壁王五了。

咱们开始进入:

mimesis

这个库专门用 Python 创建各种假数据,比如一些数据库的测试数据,假 API、Json、XML 等格式数据都可以通过它产生,把假数据整的像真的似得。

而且支持 33 个不同地方的本地语言假数据生成:

来带你体验一波:

首先导入 mimesis 的 Person 对象:

接着定义中文,使用 pprint 将这个对象给打印出来:

运行一下就可以看到 Person 对象定义的各种假数据了,随便截几张图给你体会一下。

学位、性别、语言:

名称:

性取向、姓氏:

学士学位、就读大学:

还有很多其它信息就不一一举例了,除了 Person 之外,还有 food、 address、transport、Business 等对象提供的相应假数据。

实际上,当你需要用到相关的假数据的时候,你只需要调用相关的对象方法即可:

另一个比较方便的就是 API 假数据的创建,你可以先创建一个 py 文件,在里面使用 mimesis.schema 定义要返回的 Json 参数数据格式:

接着在你需要返回 API 的方法中调用它即可:

这样调用这个接口你就可以得到相关的假数据啦:

文档在这: https://mimesis.readthedocs.io/api.html

fake2db

另一个常需要用到假数据的就是数据库了,fake2db 这个库可以给数据库填充假数据,它可以支持我们常用到的数据库,比如 MySQL、Redis、Mongodb、Sqlite 等。

安装完 fake2db 之后,你就可以使用它的命令来生成假数据了:

比如你要创建一个 Sqlite,填充 10 条假数据就可以这样:

fake2db --rows 10 --db sqlite

可以看到,这里帮我们创建了 sqlite_QPNVJVIX.db, 并且生成了多张数据表,我们进去看一下:

查询一下 user_agent 表中的数据:

可以看到这里有 10 条假 user_agent 数据。

注册信息:

你要多少数据都可以,只要把刚刚的命令中的 --rows 参数设置大一点就可以了。

那个,有买数据的么?

可能有些数据表的字段你想自己定义,那么可以在 fake2db 的 custom.py 中先定义好字段参数:

比如我想生成一张含有 user_name、password、email、date 的 Sqlite 数据表,然后往里填充 100 条假数据,就可以这样:

这里使用 --custom 将你要自定义的字段参数传进来就可以了,这时候生成的表数据就是你定义的样子:

代码在这: https://github测试数据/emirozer/fake2db

ok,奈斯,以上就是小帅b今天给你带来的分享,希望对你有帮助,那么我们下回见,peace!

查看更多关于Python 造假数据咯的详细内容...

  阅读:35次