扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
本篇内容介绍了“pydbgen是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!
内蒙古网站建设公司成都创新互联,内蒙古网站设计制作,有大型网站制作公司丰富经验。已为内蒙古上千多家提供企业网站建设服务。企业网站搭建\外贸网站制作要多少钱,请找那个售后服务好的内蒙古做网站的公司定做!
pydbgen
是一个轻量的纯 Python 库,它可以用于生成随机但有意义的数据记录(包括姓名、地址、信用卡号、日期、时间、公司名称、职位、车牌号等等),存放在 Pandas Dataframe 对象中,并保存到 SQLite 数据库或 Excel 文件。
目前 1.0.5 版本的 pydbgen 托管在 PyPI(Python 包索引存储库)上,并且对 Faker 有依赖关系。安装 pydbgen 只需要执行命令:
pip install pydbgen
已经在 Python 3.6 环境下测试安装成功,但在 Python 2 环境下无法正常安装。
在使用 pydbgen
之前,首先要初始化 pydb
对象。
import pydbgenfrom pydbgen import pydbgenmyDB=pydbgen.pydb()
随后就可以调用 pydb
对象公开的各种内部函数了。可以按照下面的例子,输出随机的美国城市和车牌号码:
myDB.city_real()>> 'Otterville'for _ in range(10): print(myDB.license_plate())>> 8NVX937 6YZH485 XBY-564 SCG-2185 XMR-158 6OZZ231 CJN-850 SBL-4272 TPY-658 SZL-0934
另外,如果你输入的是 city()
而不是 city_real()
,返回的将会是虚构的城市名。
print(myDB.gen_data_series(num=8,data_type='city'))>>New MichelleRobinboroughLeeburyKaylatownHamiltonfortLake ChristopherHannahstadWest Adamborough
你可以指定生成数据的数量和种类,但需要注意的是,返回结果均为字符串或文本类型。
testdf=myDB.gen_dataframe(5,['name','city','phone','date'])testdf
最终产生的 Dataframe 类似下图所示。
你也可以指定生成数据的数量和种类,而返回结果是数据库中的文本或者变长字符串类型。在生成过程中,你可以指定对应的数据库文件名和表名。
myDB.gen_table(db_file='Testdb.DB',table_name='People', fields=['name','city','street_address','email'])
上面的例子种生成了一个能被 MySQL 和 SQLite 支持的 .db
文件。下图则显示了这个文件中的数据表在 SQLite 可视化客户端中打开的画面。
和上面的其它示例类似,下面的代码可以生成一个具有随机数据的 Excel 文件。值得一提的是,通过将 phone_simple
参数设为 False
,可以生成较长较复杂的电话号码。如果你想要提高自己在数据提取方面的能力,不妨尝试一下这个功能。
myDB.gen_excel(num=20,fields=['name','phone','time','country'],phone_simple=False,filename='TestExcel.xlsx')
最终的结果类似下图所示:
pydbgen
内置了一个 realistic_email
方法,它基于种子来生成随机的电子邮箱地址。如果你不想在网络上使用真实的电子邮箱地址时,这个功能可以派上用场。
for _ in range(10): print(myDB.realistic_email('Tirtha Sarkar'))>>Tirtha_Sarkar@gmail.comSarkar.Tirtha@outlook.comTirtha_S48@verizon.comTirtha_Sarkar62@yahoo.comTirtha.S46@yandex.comTirtha.S@att.comSarkar.Tirtha60@gmail.comTirthaSarkar@zoho.comSarkar.Tirtha@protonmail.comTirtha.S@comcast.net
“pydbgen是什么”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注创新互联网站,小编将为大家输出更多高质量的实用文章!
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流