千家信息网

Python如何用Faker造假数据

发表于:2026-11-01 作者:千家信息网编辑
千家信息网最后更新 2026年11月01日,Python如何用Faker造假数据,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。在程序测试的时候,常常需要用到很多数据
千家信息网最后更新 2026年11月01日Python如何用Faker造假数据

Python如何用Faker造假数据,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。

在程序测试的时候,常常需要用到很多数据来进行测试。

比如姓名、性别、年龄、电话、邮箱等等。

如果手动制造数据的话,起名字比如"小明"、"小红"、"张三"、"李四"这些,有没有考虑这些名字的感受,他们也很累的吧。

再比如密码,网上排名最烂的密码,不也是"123456","abcdef","asdf"这些。

这样无厘头地制作数据确实很伤神,效率还低,那该怎么办?

Faker扩展库

这时,Python扩展库Faker来了,带着它那各种各样的数据来了。

先安装faker

pip install Faker

创建faker对象

from faker import Faker
fake = Faker()

随机生成一个名字

fake.name()  # 'Nancy Horton'

上边生成的名字是英文的,想要个中文名字怎么办?

很简单,在创建Faker对象的时候,指定语言"中文"就可以。

fake = Faker("zh_CN")

一些常用的语言包括以下等等:

  • 简体中文:zh_CN
  • 繁体中文:zh_TW
  • 美国英文:en_US
  • 英国英文:en_GB
  • 德文:de_DE
  • 日文:ja_JP
  • 韩文:ko_KR
  • 法文:fr_FR

都有什么样的数据

用faker可以生成哪些数据呢?

faker 提供了一些Standard Providers,列出了一些较为较为常用的数据。

  • address
  • company
  • date_time
  • job
  • person
  • phone_number
  • profile
  • python
  • user_agent

比如生成"地址"信息

In [1]: fake.address()
Out[1]: '北京市大冶市海陵赵路x座 941837'

这里给出的是一整条"地址"的信息,你也可以通过building_number()、city()、street_address()等获取单个信息

这些字段其实记不住也没什么,需要用哪个的时候查阅官方文档就行。

文档链接

https://faker.readthedocs.io/en/master/providers.html

再比如生成"职位"信息

In [2]: fake.job()
Out[2]: '电气/电器工程师'

生成python的数据类型

# 生成一个字典
In [3]: fake.pydict()
Out[3]:
{'生产': 'OlmMWPfQMJYxeiJtZSFC',
'有些': 'jUYzbWgDEqvzjiAsubSX',
'资源': 7670,
'应用': 804210265906561.0,
'国际': 9113,
'电影': 'https://yangtang.cn/homepage.jsp',
'方面': 'RGfbqIgxqTbnjkGDpoVO',
'为什': 1947,
'地址': 7021,
'时候': 'oxia@hotmail.com'}

生成user_agent

In [4]: fake.chrome()
Out[4]: 'Mozilla/5.0 (iPad; CPU iPad OS 4_2_1 like Mac OS X) AppleWebKit/531.2 (KHTML, like Gecko) CriOS/55.0.807.0 Mobile/62B715 Safari/531.2'

生成个人信息

In [5]: fake.profile()
Out[5]:
{'job': '仓库管理员',
'company': '太极传媒有限公司',
'ssn': '370302198911123749',
'residence': '云南省桂英市沈北新王路k座 204494',
'current_location': (Decimal('32.942144'), Decimal('95.019663')),
'blood_group': 'O-',
'website': ['https://www.minyan.cn/'],
'username': 'yangwen',
'name': '蒋璐',
'sex': 'M',
'address': '宁夏回族自治区宁德县丰都长沙街a座 685268',
'mail': 'oliao@yahoo.com',
'birthdate': datetime.date(1971, 2, 13)}

如果想生成多条个人信息,可以利用for循环,把每个字典在添加到列表里,导出一个DataFrame

看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注行业资讯频道,感谢您对的支持。

生成 数据 信息 名字 时候 地址 中文 英文 个人 字典 密码 对象 常用 怎么办 文档 语言 帮助 测试 伤神 多条 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 耶加雪菲 互联网科技园 河南真二互联网科技有限公司 融势互联网科技 互联网科技公司名称 恒生科技互联网指数分析 互联网 科技馆 互联网科技公司需要的职位 迪庆互联网科技招生 高科技互联网套路 每天都有哪些好的互联网科技 广州百诚互联网科技有限公司官网 2021世界互联网领先科技成果发布 易企秀互联网科技是做什么的 西安有哪些互联网高科技企业 吉林省码上互联网科技电话 广州智享互联网科技 兰石爱特工业互联网科技分公司 马化腾互联网科技教学 数字科技和互联网金融哪个好 广东猪兼强互联网科技有限公司 阿里巴巴算科技企业还是互联网 随着互联网科技发展 知域互联网科技有限公司大骗子 燊美集互联网科技有限公司 山东有哪些互联网科技公司 扫呗互联网科技有限公司 上海同邻互联网科技有限公司规模 互联网界的黑科技 北京互联网科技类企业分布
0