做开发的时候常常要模拟一些用户数据,自己编写随机数据虽然也可以,但是如果想要模拟比较复杂的数据,那自己做的话就有些麻烦。faker正是这样一个类库,让我们能非常简单的模拟数据。本文参考自官方文档,如果有兴趣可以查看官方文档,不过
安装faker
首先先来安装faker:
pip install Faker
简单使用
faker用起来也很简单,初始化一个实例,然后调用对应的方法就可以获得随机数据。
from faker import Faker
fake = Faker()
fake.name()
# 'Lucy Cechtelar'
fake.address()
# '426 Jordy Lodge
# Cartwrightshire, SC 88120-6700'
默认语言是英文,如果要使用其他语言的随机数据,可以简单的向Faker构造函数传递一个代表区域类型的字符串:
fake = Faker('zh_CN')
官方文档列出了所有可用的区域类型以及对应语言的显示实例,常用的自然是en_US
和zh_CN
。
数据提供器(Providers)
默认的faker实例自带的方法并不多,只能模拟一些简单数据,但是faker还提供了一种扩展办法,就是添加数据提供器。提供器是一个继承自faker.providers.BaseProvider
的类,如果需要自己编写一些新的随机数据生成方法,就可以用提供器。需要注意提供器的类名必须是Provider
。
from faker import Faker
import random
from faker.providers import BaseProvider
# 自定义Provider
class Provider(BaseProvider):
def random_hello(self):
return ra