python工具——Mimesis的简单使用教程

2021-01-17 0 244

Mimesis是一个用于Python的高性能伪数据生成器, 支持多种不同的语言

可以用来生成各种测试数据、假的 API 、任意结构的 JSON 、XML 数据

安装

pip install mimesis

示例

from mimesis import Person

person = Person(\'zh\')
print(f\'name: {person.surname() + \"\" + person.name()}\')
print(f\'sex: {person.sex()}\')
print(f\'academic degree: {person.academic_degree()}\')
print(f\'occupation: {person.occupation()}\')
email = person.email(domains=[\'126.com\'])
print(f\'email: {email}\')
phone = person.telephone(mask=\'132-8###-5##3\')
print(f\'telephone: {phone}\')

结果

python工具——Mimesis的简单使用教程

查看 Person 对象里面都有什么数据

from mimesis import Person
from pprint import pprint
person = Person(\'zh\')
pprint(vars(person))

数据结构

{\'_data\': {\'academic_degree\': [\'学士\', \'研究生\', \'博士\'],
      \'gender\': [\'男性\', \'女性\'],
      \'language\': [\'南非语\',
            ……
            \'中文\',
            \'祖鲁语\'],
      \'names\': {\'female\': [\'朵雯\',
                ……
                \'若未\'],
           \'male\': [\'彦龙\',
               ……
               \'清妍\']},
      \'nationality\': [\'阿尔及利亚\',
              ……
              \'南乔治亚岛和南桑威奇群岛\'],
      \'occupation\': [\'民意代表\',
             ……
             \'职业运动员\'],
      \'political_views\': [\'社会主?\', \'民主\', \'共?\'],
      \'sexuality\': [\'异性恋\', \'同性恋\', \'双性恋\', \'无性恋\'],
      \'surnames\': [\'赵\',
            ……
            \'司空\'],
      \'telephone_fmt\': [\'+86 ###-########\'],
      \'title\': {\'female\': {\'academic\': [\'工学硕士\',
                       ……
                       \'教授\'],
                \'typical\': [\'小姐\', \'女士\']},
           \'male\': {\'academic\': [\'工学硕士\',
                      ……
                      \'教授\'],
               \'typical\': [\'先生\']}},
      \'university\': [\'北京大学\',
             ……
             \'新疆工业职业技术学\'],
      \'views_on\': [\'?面\', \'正面\', \'中立\'],
      \'worldview\': [\'无神论\', \'不可知?\', \'自然神?\', \'泛神论\', \'儒教\']},
 \'_data_dir\': WindowsPath(\'D:/Python37/lib/site-packages/mimesis/data\'),
 \'_datafile\': \'person.json\',
 \'_store\': {\'age\': 0},
 \'locale\': \'zh\',
 \'random\': <mimesis.random.Random object at 0x0000000002A41EA8>,
 \'seed\': None}

除了Person ,还有 food、 address、transport、Business 等对象提供的相应假数据

生成json数据

eg:

data.py

from mimesis.schema import Field,Schema
from mimesis.enums import Gender
_ = Field(\'zh\')
schema = Schema(schema=lambda: {
  \'id\': _(\'uuid\'),
  \'name\': _(\'person.name\'),
  \'version\': _(\'version\', pre_release=True),
  \'timestamp\': _(\'timestamp\', posix=False),
  \'owner\': {
    \'email\': _(\'person.email\', domains=[\'test.com\'], key=str.lower),
    \'token\': _(\'token_hex\'),
    \'creator\': _(\'full_name\', gender=Gender.FEMALE)
  },
  \'address\': {
    \'country\': _(\'address.country\'),
    \'province\': _(\'address.province\'),
    \'city\': _(\'address.city\')
  }
})

使用FastAPI

from fastapi import FastAPI
from data import schema
app = FastAPI()

@app.get(\"/\")
def home():
  # 生成数据
  testData = schema.create(iterations=2)
  return testData

运行

 uvicorn main:app

访问http://127.0.0.1:8000/

结果

[
  {
    \"id\": \"aebd4f31-3dfe-4c9d-a3e9-ef3a0b88007a\",
    \"name\": \"江燕\",
    \"version\": \"1.8.3-rc.1\",
    \"timestamp\": \"2020-05-08T22:25:47Z\",
    \"owner\": {
      \"email\": \"boobies1874@test.com\",
      \"token\": \"136bfa9e7771842dae3758de2cf5997f0fcfd39b56b6063f11e6123638e7d951\",
      \"creator\": \"袭韵 欧\"
    },
    \"address\": {
      \"country\": \"中?民??,
      \"province\": \"青海省\",
      \"city\": \"开封市\"
    }
  },
  {
    \"id\": \"69ed6ad2-5430-4627-ab36-73c2df4a9ca2\",
    \"name\": \"绵恩\",
    \"version\": \"4.3.4-alpha.2\",
    \"timestamp\": \"2001-11-12T15:29:39Z\",
    \"owner\": {
      \"email\": \"awatch1835@test.com\",
      \"token\": \"b352bcc3c446650c2682bfc09a068acc4d0b60583cbb0e241f7fd44d02e43d89\",
      \"creator\": \"乐轩 乌\"
    },
    \"address\": {
      \"country\": \"中?民??,
      \"province\": \"陕西省\",
      \"city\": \"黄石市\"
    }
  }
]

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

以上就是python工具——Mimesis的简单使用教程的详细内容,更多关于python Mimesis的使用教程的资料请关注自学编程网其它相关文章!

遇见资源网 Python python工具——Mimesis的简单使用教程 http://www.ox520.com/27900.html

常见问题

相关文章

发表评论
暂无评论
官方客服团队

为您解决烦忧 - 24小时在线 专业服务