一个python库搞定自动生成测试数据

简介: 一个python库搞定自动生成测试数据

1.fake introduce


Welcome to fake's documentation!

fake is a Python package that generates fake data for you ,github address: github.com/joke2k/fake… ,can get doc at : fake.readthedocs.io/en/master/


2.install


pip install fake


3.use


from fake import fake
f = fake()
# 随机生成姓名
print(f.name())
# 随机生成地址
print(f.address())
# 随机生成email
print(f.email())
# 随机生成password
print(f.password())
# 随机生成一段文本
print(f.text())
Keith Bridges
00582 Cathy Harbors Suite 865
North Christinachester, WY 29526
nicole14@example.net
PI3RGp_w@d
Worker describe wall management. Move position board dream talk cost. Live join service.
for _ in range(10):
    print(f.name())
Abigail Anderson
Sherry Barron
Lori Santos
Zachary Moran
Diana Santana
Megan Pierce
Jasmine Keith
Kyle Cowan
Richard Lucas
Zachary Contreras


4. language set


ar_EG - Arabic (Egypt)
ar_PS - Arabic (Palestine)
ar_SA - Arabic (Saudi Arabia)
bg_BG - Bulgarian
bs_BA - Bosnian
cs_CZ - Czech
de_DE - German
dk_DK - Danish
el_GR - Greek
en_AU - English (Australia)
en_CA - English (Canada)
en_GB - English (Great Britain)
en_NZ - English (New Zealand)
en_US - English (United States)
es_ES - Spanish (Spain)
es_MX - Spanish (Mexico)
et_EE - Estonian
fa_IR - Persian (Iran)
fi_FI - Finnish
fr_FR - French
hi_IN - Hindi
hr_HR - Croatian
hu_HU - Hungarian
hy_AM - Armenian
it_IT - Italian
ja_JP - Japanese
ka_GE - Georgian (Georgia)
ko_KR - Korean
lt_LT - Lithuanian
lv_LV - Latvian
ne_NP - Nepali
nl_NL - Dutch (Netherlands)
no_NO - Norwegian
pl_PL - Polish
pt_BR - Portuguese (Brazil)
pt_PT - Portuguese (Portugal)
ro_RO - Romanian
ru_RU - Russian
sl_SI - Slovene
sv_SE - Swedish
tr_TR - Turkish
uk_UA - Ukrainian
zh_CN - Chinese (China)
zh_TW - Chinese (Taiwan)
from fake import fake
f = fake('zh_CN')
# 随机生成姓名
print(f.name())
# 随机生成地址
print(f.address())
# 随机生成email
print(f.email())
# 随机生成password
print(f.password())
# 随机生成一段文本
print(f.text())
刘倩
西藏自治区郑州县房山张街U座 322175
rdu@example.net
W%7R5mQwy7
美国新闻准备因此.销售正在过程论坛最新.行业更多应该所有电影谢谢的是.位置研究以后一般专业.
包括投资这样我的知道商品您的.社区全部不能程序其实点击.
空间发生国内工具.的是能够经营如果一个部门内容.是一或者也是组织设备其他结果.
网络回复那个表示非常.市场项目技术汽车时候.
一切公司日期论坛上海分析.以及可是管理各种密码市场是否日本.威望人员你的个人学生说明.


4.1姓名生成


from fake import fake
fake = fake("zh_CN")
print(fake.last_name())
print(fake.first_name())
print(fake.name_male())
玉兰
陆刚


4.2 地址生成


for i in range(2):
    print(fake.address())
    print(fake.building_number())
    print(fake.city())
    print(fake.city_name())
    print(fake.city_suffix())
    print(fake.country())
    print(fake.country_code(representation="alpha-2"))
    print(fake.district())
    print(fake.postcode())
    print(fake.province())
    print(fake.street_address())
    print(fake.street_name())
    print(fake.street_suffix())
    print(50*'*')
天津市刚县西峰张路z座 619643
W座
齐齐哈尔市
福州
加那利群岛
GE
东丽
781851
湖南省
长沙路R座
陆路
**************************************************
湖南省乌鲁木齐县南长呼和浩特街I座 183264
m座
琴县
香港
伊郎
CV
上街
475288
香港特别行政区
辛集街e座
徐路
**************************************************


4.3 公司生成


print(fake.bs())
print(fake.catch_phrase())
print(fake.company())
print(fake.company_prefix())
print(fake.company_suffix())
innovate virtual supply-chains
Stand-alone discrete application
毕博诚传媒有限公司
襄樊地球村
信息有限公司


4.3 信用卡生成


print(fake.credit_card_expire(start="now", end="+10y", date_format="%m/%y"))
print(fake.credit_card_full(card_type=None))
print(fake.credit_card_number(card_type=None))
print(fake.credit_card_provider(card_type=None))
02/28
Diners Club / Carte Blanche
红 曹
30251709384476 07/28
CVC: 093
213195678567133
Diners Club / Carte Blanche
973


4.4日期时间生成


fake.am_pm()
# 'AM'
fake.century()
# 'X'
fake.date(pattern="%Y-%m-%d", end_datetime=None)
# '1997-06-16'
fake.date_between(start_date="-30y", end_date="today")
# datetime.date(2000, 8, 30)
fake.date_between_dates(date_start=None, date_end=None)
# datetime.date(2019, 7, 30)
fake.date_object(end_datetime=None)
# datetime.date(1978, 3, 12)
fake.date_of_birth(tzinfo=None, minimum_age=0, maximum_age=115)
# datetime.date(2012, 6, 3)
fake.date_this_century(before_today=True, after_today=False)
# datetime.date(2011, 6, 12)
fake.date_this_decade(before_today=True, after_today=False)
# datetime.date(2011, 8, 22)
fake.date_this_month(before_today=True, after_today=False)
# datetime.date(2019, 7, 25)
fake.date_this_year(before_today=True, after_today=False)
# datetime.date(2019, 7, 22)
fake.date_time(tzinfo=None, end_datetime=None)
# datetime.datetime(2018, 8, 11, 22, 3, 34)
fake.date_time_ad(tzinfo=None, end_datetime=None, start_datetime=None)
# datetime.datetime(1566, 8, 26, 16, 25, 30)
fake.date_time_between(start_date="-30y", end_date="now", tzinfo=None)
# datetime.datetime(2015, 1, 31, 4, 14, 10)
fake.date_time_between_dates(datetime_start=None, datetime_end=None, tzinfo=None)
# datetime.datetime(2019, 7, 30, 17, 51, 44)
fake.date_time_this_century(before_now=True, after_now=False, tzinfo=None)
# datetime.datetime(2002, 9, 25, 23, 59, 49)
fake.date_time_this_decade(before_now=True, after_now=False, tzinfo=None)
# datetime.datetime(2010, 5, 25, 20, 20, 52)
fake.date_time_this_month(before_now=True, after_now=False, tzinfo=None)
# datetime.datetime(2019, 7, 19, 18, 4, 6)
fake.date_time_this_year(before_now=True, after_now=False, tzinfo=None)
# datetime.datetime(2019, 3, 15, 11, 4, 18)
fake.day_of_month()
# '04'
fake.day_of_week()
# 'Monday'
fake.future_date(end_date="+30d", tzinfo=None)
# datetime.date(2019, 8, 12)
fake.future_datetime(end_date="+30d", tzinfo=None)
# datetime.datetime(2019, 8, 24, 2, 59, 4)
fake.iso8601(tzinfo=None, end_datetime=None)
# '1987-07-01T18:33:56'
fake.month()
# '11'
fake.month_name()
# 'August'
fake.past_date(start_date="-30d", tzinfo=None)
# datetime.date(2019, 7, 25)
fake.past_datetime(start_date="-30d", tzinfo=None)
# datetime.datetime(2019, 7, 18, 22, 46, 51)
fake.time(pattern="%H:%M:%S", end_datetime=None)
# '16:22:30'
fake.time_delta(end_datetime=None)
# datetime.timedelta(0)
fake.time_object(end_datetime=None)
# datetime.time(22, 12, 15)
fake.time_series(start_date="-30d", end_date="now", precision=None, distrib=None, tzinfo=None)
# <generator object Provider.time_series at 0x7fcbce0604f8>
fake.timezone()
# 'Indian/Comoro'
fake.unix_time(end_datetime=None, start_datetime=None)
# 1182857626
fake.year()
# '1970'
'1982'


4.5 文件生成


fake.file_extension(category=None)
# 'flac'
fake.file_name(category=None, extension=None)
# '然后.numbers'
fake.file_path(depth=1, category=None, extension=None)
# '/关系/科技.mov'
fake.mime_type(category=None)
# 'video/ogg'
fake.unix_device(prefix=None)
# '/dev/sdd'
fake.unix_partition(prefix=None)
# '/dev/xvds3'
'/dev/xvdw8'


4.6 假文字生成


fake.paragraph(nb_sentences=3, variable_nb_sentences=True, ext_word_list=None)
# '包括的是报告那些一点.图片地址基本全部.'
fake.paragraphs(nb=3, ext_word_list=None)
# [   '计划规定这样所以组织商品其中.参加成为不同发表地区.精华科技谢谢大家需要.一下手机上海中文工程.',
#     '非常相关是一就是一个一种文章发生.增加那些以及之后以下你的.',
#     '学生应该出来分析增加关系组织.评论来源朋友注册应该需要单位.感觉最后无法发现选择人民.']
fake.sentence(nb_words=6, variable_nb_words=True, ext_word_list=None)
# '介绍结果自己解决处理.'
fake.sentences(nb=3, ext_word_list=None)
# ['查看其实一次学习登录浏览是一他们.', '而且资源的人事情.', '科技价格免费大学教育.']
fake.text(max_nb_chars=200, ext_word_list=None)
# ('只是当前国内中文所以.威望系统在线虽然.n'
#  '图片人民非常合作这种谢谢更新.名称详细直接社会一直首页完全.n'
#  '重要更多只要市场.必须只是学生音乐.系统美国类别这些一切环境.n'
#  '但是的话人民美国关于.n'
#  '情况专业国际看到研究.音乐环境市场搜索发现.n'
#  '工具还是到了今天位置人民.留言作者品牌工程项目必须.上海精华现在我们新闻应该关系.n'
#  '更新经济能力全部资源如果.手机能够登录国内.')
fake.texts(nb_texts=3, max_nb_chars=200, ext_word_list=None)
# [   '成功可能推荐你的行业.地区而且推荐.n'
#     '网络不断是一主要必须.开始安全服务.n'
#     '应该网上通过以后通过大学.管理要求有关国际阅读当前.为了应该结果点击公司开始怎么.n'
#     '成功一次最大生产网站.这种加入她的地址有限.n'
#     '根据新闻汽车起来非常主题显示必须.有些建设来自作者电话支持.n'
#     '只是资源还是由于经济事情喜欢.为什中文大小得到服务.网络密码是否免费参加一次社区欢迎.',
#     '部门活动技术.商品影响发生行业密码完成.就是部门结果资料学习当然.或者帮助城市要求首页市场教育你们.n'
#     '专业完全分析处理城市大学什么.n'
#     '文件非常国际全部起来积分公司.资料的是电影没有.这是本站需要.n'
#     '合作重要没有现在市场开发空间.您的会员推荐成功教育进行中国.n'
#     '文件不是如果评论.因为经验设备规定.n'
#     '加入一起影响网上大家运行在线如果.工程企业这种以后.',
#     '空间市场出现必须基本电话.显示一个标准其他设计作品.工程不断新闻问题更多更新这么.n'
#     '一起简介网上内容不会.任何知道各种两个.类别事情经营那么投资市场.n'
#     '那些使用介绍公司朋友人民你们浏览.应该表示一点一般说明主要谢谢.电话回复起来经验一个来源加入.n'
#     '地区法律其他表示虽然.参加社会喜欢有限论坛一般发布.类别目前文化可以.n'
#     '报告质量工作主要.企业发布完全.得到名称作者等级两个论坛只要电话.']
fake.word(ext_word_list=None)
# '注意'
fake.words(nb=3, ext_word_list=None, unique=False)
# ['责任', '组织', '以后']
['其他', '手机', '这些']


4.7 Misc


fake.boolean(chance_of_getting_true=50)
# True
fake.md5(raw_output=False)
# '3166fa26ffd3f2a33e020dfe11191ac6'
fake.null_boolean()
# False
fake.password(length=10, special_chars=True, digits=True, upper_case=True, lower_case=True)
# 'W7Ln8La@%O'
fake.sha1(raw_output=False)
# 'c8301a2a79445439ee5287f38053e4b3a05eac79'
fake.sha256(raw_output=False)
# '1e909d331e20cf241aaa2da894deae5a3a75e5cdc35c053422d9b8e7ccfa0402'
fake.uuid4()
# '6e6fe387-6877-48d9-94ea-4263c4c71aa5'
'2fdabcea-b997-4710-adbf-5ae741094561'


5.seed设置


from faker import Faker
# 设置seed 值
Faker.seed(1222)
fake = Faker("zh_CN")
print(fake.credit_card_full())
print(fake.date_time())
JCB 16 digit
小红 赵
3559784836633188 07/22
CVC: 450
1974-08-10 20:18:48


目录
相关文章
|
1天前
|
Python
在Python中绘制K线图,可以使用matplotlib和mplfinance库
使用Python的matplotlib和mplfinance库可绘制金融K线图。mplfinance提供便利的绘图功能,示例代码显示如何加载CSV数据(含开盘、最高、最低、收盘价及成交量),并用`mpf.plot()`绘制K线图,设置类型为&#39;candle&#39;,显示移动平均线(mav)和成交量信息。可通过调整参数自定义图表样式,详情参考mplfinance文档。
8 2
|
2天前
|
机器学习/深度学习 边缘计算 TensorFlow
【Python机器学习专栏】Python机器学习工具与库的未来展望
【4月更文挑战第30天】本文探讨了Python在机器学习中的关键角色,重点介绍了Scikit-learn、TensorFlow和PyTorch等流行库。随着技术进步,未来Python机器学习工具将聚焦自动化、智能化、可解释性和可信赖性,并促进跨领域创新,结合云端与边缘计算,为各领域应用带来更高效、可靠的解决方案。
|
2天前
|
机器学习/深度学习 算法 UED
【Python 机器学习专栏】A/B 测试在机器学习项目中的应用
【4月更文挑战第30天】A/B测试在数据驱动的机器学习项目中扮演关键角色,用于评估模型性能、算法改进和特征选择。通过定义目标、划分群组、实施处理、收集数据和分析结果,A/B测试能帮助优化模型和用户体验。Python提供工具如pandas和scipy.stats支持实验实施与分析。注意样本量、随机性、时间因素和多变量分析,确保测试有效性。A/B测试助力于持续改进机器学习项目,实现更好的成果。
|
2天前
|
机器学习/深度学习 存储 数据采集
【Python 机器学习专栏】PCA(主成分分析)在数据降维中的应用
【4月更文挑战第30天】本文探讨了主成分分析(PCA)在高维数据降维中的应用。PCA通过线性变换找到最大化方差的主成分,从而降低数据维度,简化存储和计算,同时去除噪声。文章介绍了PCA的基本原理、步骤,强调了PCA在数据降维、可视化和特征提取上的优势,并提供了Python实现示例。PCA广泛应用在图像压缩、机器学习和数据分析等领域,但降维后可能损失解释性,需注意选择合适主成分数量及数据预处理。
|
2天前
|
vr&ar Python
Python自激励阈值自回归(SETAR)、ARMA、BDS检验、预测分析太阳黑子时间序列数据
Python自激励阈值自回归(SETAR)、ARMA、BDS检验、预测分析太阳黑子时间序列数据
|
2天前
|
Python
Python随机波动性SV模型:贝叶斯推断马尔可夫链蒙特卡洛MCMC分析英镑/美元汇率时间序列数据|数据分享
Python随机波动性SV模型:贝叶斯推断马尔可夫链蒙特卡洛MCMC分析英镑/美元汇率时间序列数据|数据分享
|
2天前
|
机器学习/深度学习 Python
【Python机器学习专栏】时间序列数据的特征工程
【4月更文挑战第30天】本文探讨了时间序列数据的特征工程,强调其在捕捉季节性、揭示趋势、处理异常值和提升模型性能中的重要性。介绍了滞后特征、移动窗口统计特征、时间戳特征、频域特征和波动率特征等方法,并提供了Python实现示例。通过有效特征工程,可提高时间序列分析的准确性和预测可靠性。
|
2天前
|
机器学习/深度学习 计算机视觉 Python
【Python 机器学习专栏】图像数据的特征提取与预处理
【4月更文挑战第30天】本文探讨了图像数据的特征提取与预处理在机器学习中的重要性。图像数据具有大容量、信息丰富和冗余性高的特点。特征提取涉及颜色、纹理和形状特征;预处理包括图像增强、去噪和分割。Python的OpenCV和Scikit-image库在处理这些任务时非常有用。常见的特征提取方法有统计、变换和基于模型的方法,而预处理应注意保持图像真实性、适应性调整及验证评估。有效的特征提取和预处理能提升模型性能,Python工具使其更高效。
|
2天前
|
机器学习/深度学习 自然语言处理 算法
【Python机器学习专栏】文本数据的特征提取与表示
【4月更文挑战第30天】本文探讨了文本特征提取与表示在机器学习和NLP中的重要性。介绍了词袋模型、TF-IDF和n-gram等特征提取方法,以及稀疏向量和词嵌入等表示方式。Python中可利用sklearn和gensim库实现这些技术。有效的特征提取与表示有助于将文本数据转化为可处理的数值形式,推动NLP和机器学习领域的进步。
|
2天前
|
机器学习/深度学习 数据采集 算法
【Python机器学习专栏】使用Scikit-learn进行数据编码
【4月更文挑战第30天】本文介绍了Python Scikit-learn库在机器学习数据预处理中的作用,尤其是数据编码。数据编码将原始数据转化为算法可理解的格式,包括标签编码(适用于有序分类变量)、独热编码(适用于无序分类变量)和文本编码(如词袋模型、TF-IDF)。Scikit-learn提供LabelEncoder和OneHotEncoder类实现这些编码。示例展示了如何对数据进行标签编码和独热编码,强调了正确选择编码方法的重要性。