faker模块基本用法
引言:
自动化脚本编写时,一般会遇到需要构造数据的情况,比如注册时的基本信息;每次执行脚本都要重新构造数据显然是很费时费力的事情,所以可以用到faker模块来构造;方便快捷,神器也;
一、安装
pip install -U faker
二、基本用法
1.创建10次不同的用户名:
from faker import Factory
def create_names():
fake = Factory.create()
):
print fake.name()
if __name__ == '__main__':
create_names()
随机产生10个符合命名规则的假数据,因为名字规则是按外国人名涉及的,所以可能会有很多概率出现姓名之外的简称等
>>> ============== RESTART: C:\Users\hao\Desktop\faker_test.py ============== David MartinMrs. Terese Walter MDJess MayertMs. Katerina Fisher PhDMrs. Senora Purdy PhDGretchen TrompWinnie GoodwinYuridia McGlynn MDMelissa Kent April Washington >>>
2.生成只有姓和名的数据
from faker import Factory
def create_names():
fake = Factory.create()
):
print '%s %s' % (fake.last_name(), fake.first_name())
if __name__ == '__main__':
create_names()
生成的数据只包含了last_name和first_name
>>> ============== RESTART: C:\Users\lizihao\Desktop\faker_test.py ============== Gillespie Travis Gomez Brandon Wiley Jim Anderson Amber Walker Desiree Miranda Elizabeth Johnson Samantha Tanner David Keller Allison Sanchez Kaylee >>>
3.还有一些常用的数据,比如用户名、密码、电话、住址、城市等等
from faker import Factory
def create_fake_stuff():
stuff = ['user_name', 'password', 'email', 'phone_number', 'address', 'city', 'state', 'paragraph']
fake = Factory.create()
for item in stuff:
print '%s = %s' % (item, getattr(fake, item)())
if __name__ == '__main__':
create_fake_stuff()
生成的对应的数据:
>>> ============== RESTART: C:\Users\lizihao\Desktop\faker_test.py ============== user_name = kevin04 password = PN5xUyd5n$ email = rodriguezwilliam@hotmail.com phone_number = -- address = Brett Glens Port Jeffrey, MD city = Meltonbury state = Arizona paragraph = Iure odit voluptatibus quidem iste. Omnis ab ab voluptas consequuntur earum repellendus corrupti. >>>
三、其余的用法
如果想知道faker都能生成哪些规则的数据,可以创建fake对象,然后dir(fake);
>>> from faker import Factory >>> fake = Factory.create() >>> dir(fake) >>>
得到的结果是:

需要什么样的数据就在里面找吧,一般都能满足你的需要;
faker模块基本用法的更多相关文章
- python模块一之faker模块
faker模块主要是用来创建伪数据,无需手动生成或者手写随机数来生成数据,可以利用faker完成伪造大量测试数据的工作 一.安装 pip install faker 二.使用 from faker i ...
- python-利用faker模块生成测试数据
Python-利用faker模块生成测试数据 1.前言: Faker模块是一个生成伪数据的第三方模块,他提供了一系列方法,使用非常方便,在做自动化测试时,注册信息,用这个模块生成测试数据就体现了它的好 ...
- json模块和pickle模块的用法
在python中,可以使用pickle和json两个模块对数据进行序列化操作 其中: json可以用于字符串或者字典等与python数据类型之间的序列化与反序列化操作 pickle可以用于python ...
- faker模块
faker模块中有很多函数,可以直接生成手机号,身份证号,姓名等 1.安装faker pip install faker 2.faker的使用 from faker import Faker f=Fa ...
- python之模块py_compile用法(将py文件转换为pyc文件)
# -*- coding: cp936 -*- #python 27 #xiaodeng #python之模块py_compile用法(将py文件转换为pyc文件):二进制文件,是由py文件经过编译后 ...
- 百万年薪python之路 -- socket()模块的用法
socket()模块的用法: import socket socket.socket(socket_family,socket_type,protocal=0) socket_family 可以是 A ...
- Python的logging模块基本用法
Python 的 logging 模块的简单用法 在服务器部署时,往往都是在后台运行.当程序发生特定的错误时,我希望能够在日志中查询.因此这里熟悉以下 logging 模块的用法. logging 模 ...
- python学习第四十九天XML模块的用法
xml是实现不通语言或程序之间进行数据交换的协议,跟json差不多,但是json用起来简单,还没诞生json,以前都是用xml,下面讲述XML模块的用法. 1,导入xml模块 import xml 2 ...
- python pickle模块的用法
pickle用于python特有的类型,和python的数据类型间进行转换,提供四个功能 dumps,dump,loads,load. pickle 的用法 #pickle.dumps 将数据通过特殊 ...
随机推荐
- bisect
# 二分查找算法 import bisect farm = sorted(['haystack', 'needle', 'cow', 'pig']) # ['cow', 'haystack', 'ne ...
- MySQL主从数据库配置
使用工具 MySQL数据版本:5.6.36-log. 两台云服务器(Linux系统) 首先,需要在Linux系统下安装MySQL,具体步骤可以参考这里,并且确保两台主机可以相互访问,可以直接ping一 ...
- PHP webservice初探
背景:在最近的开发中,为了解决公司内部系统与外部系统的对接,开始接触到了webservice接口,外部公司提供接口供我们调用,已达到数据同步的目的,因此有必要普及一下web service的知识了! ...
- (4)socket的基础使用(基于TCP协议的并发编程)
需要实现并发需要依靠socketserver 模块 socketserver模块下有几个功能 def __init__(self, request, client_address, server): ...
- frameset的用法
碰到一个frameset的问题,因为我比较懒,就先从网上拿来一篇基础知识,呵呵,好记性不如烂笔头啊 所谓框架便是网页画面分成几个框窗,同时取得多个 URL.只需要 <FRAMESE ...
- ZH奶酪:Python使用ElementTree解析XML【译】
19.7. xml.etree.ElementTree — The ElementTree XML API 源代码: Lib/xml/etree/ElementTree.py Element类型是一种 ...
- Vault 0.10包含了web ui
Vault 是一个很不错的访问控制,secret api key 管理工具 新的0.10 有好多新的功能的添加,最棒的是有一个web ui 了 包含的新特性如下: K/V Secrets Engine ...
- java 搭建新项目,最佳组合:spring boot + mybatis generator
java 搭建新项目,最佳组合:spring boot + mybatis generator
- Spring 相关注解
spring 2.5 中除了提供 @Component 注释外,还定义了几个拥有特殊语义的注释,它们分别是:@Repository.@Service 和 @Controller. 在目前的 Sprin ...
- 从工程文化和运维理念理解Netflix
http://www.infoq.com/cn/news/2018/01/netflix-engineering-culture 在技术圈儿,Netflix 是一家非常有特色的互联网公司.他们信奉“自 ...