为任何目的生成假数据
damm的Python项目详细描述
该死的
为任何目的生成假/假数据
目录
简介
dammy是一个强大而简单的工具来生成假数据。您可以使用它来模拟类、填充数据库等等。 您可以查看完整的文档here。在
特点
- 在预先构建的对象集中生成任何内容(人名、国家名称、汽车制造商和型号、随机日期…)
- 轻松组合更复杂的数据(完整的配置文件、完整的数据库)
- 在几乎没有代码的情况下扩展上一个集合的可能性
- 完全凭直觉,你将在不到10分钟内学会使用它
- 将生成的数据导出到SQL
示例
如果你想随机产生1000个人,只要定义一个人长什么样,剩下的就交给达米处理
fromdammyimportEntityGeneratorfromdammy.functionsimportcastfromdammy.stdlibimportRandomName,RandomString,RandomDateTime,RandomInteger,CountryNameclassPerson(EntityGenerator):first_name=RandomName().upper()password=RandomString(5)birthday=RandomDateTime(start=datetime(1980,1,1),end=datetime(2000,12,31),date_format='%d/%m/%Y')favorite_number=RandomInteger(0,10)age=cast((datetime.now()-birthday).days/365.25,int)country=CountryName()# Generate 1000 random peopleforiinrange(0,1000):print(Person())
将输出:
^{pr2}$它还支持表之间的关系,因此您可以生成数据来填充数据库
fromdammyimportEntityGeneratorfromdammy.dbimportAutoIncrement,PrimaryKey,ForeignKeyfromdammy.stdlibimportRandomName,RandomString,RandomDateTime,RandomInteger,CountryName# Define what a person looks likeclassPerson(EntityGenerator):id_pk=PrimaryKey(id=AutoIncrement())first_name=RandomName().upper()password=RandomString(5)birthday=RandomDateTime(start=datetime(1980,1,1),end=datetime(2000,12,31),date_format='%d/%m/%Y')favorite_number=RandomInteger(0,10)age=cast((datetime.now()-birthday).days/365.25,int)country=CountryName()# Define what a car looks likeclassCar(EntityGenerator):id_pk=PrimaryKey(id=AutoIncrement())manufacturer_name=CarBrand()model=CarModel(car_brand=manufacturer_name)owner=ForeignKey(Person,'identifier')
数据可以导出到SQL
fromdammyimportDatasetGenerator# Generate a dataset with 20000 cars and 94234 peopledataset=DatasetGenerator((Car,20000),(Person,94234)).generate()dataset.get_sql(save_to='cars_with_owners.sql')
安装
使用pip安装dammy的最新稳定版本
pip install dammy
您还可以通过克隆存储库并使用pip安装它来安装最新的开发版本
git clone https://github.com/ibonn/dammy.git dammy
cd dammy
pip install -e .
发布历史记录
- 在
1.1.0款
- 迭代器已添加
- 在
1.0.0款
- 从现在开始使用语义版本控制
- 固定文件
- 次要代码更改(删除重复代码…)
- 在
0.1.3款
- 代码重构
- 所有的二进制操作都可以在BaseGenerator对象之间进行
- BaseDammy重命名为BaseGenerator
- EntityGenerator已重命名为OperationResult
- DammyEntity已重命名为EntityGenerator
- 所有内容都继承自BaseGenerator
- 已删除DatabaseConstraint
- 添加了独特的约束支持
- 现在可以将数据集导出到JSON
- 实体现在可以导出为JSON和CSV
- 在该死的.stdlib增加了新的内置发电机
- 在
0.1.2款
- 文件已改进
- DatasetGenerator已从主数据库移动到数据库
- 修复了小错误
- 在
0.1.1节
- 可以获取实体的属性
- 可以调用实体上的方法
- 增加了执行操作的能力
- 代码改进
- 添加了Docstrings
- 在
0.0.3
- 修正了stdlib中的导入错误
- 在
0.0.1款
- 首次发布
- 项目
标签: