likes
comments
collection
share

python:faker扩展包

作者站长头像
站长
· 阅读数 39

参考网址

https://zhuanlan.zhihu.com/p/87203290

前言

在编写程序过程中,我们常常需要用到很多数据来进行`测试`
如果要是`手动制造数据`的话,肯定要花费大把精力,这不合理。
此时我们应该使用Faker这个Python库(扩展包),用它来生成各种各样的`伪数据`

安装

pip install faker

基本用法


from faker import Faker    #  从faker模块导入Faker这个类。
fake = Faker()       #  实例化,保存到变量fake中。      
 
fake.name()           #  调用name()方法随机生成一个名字。    
# Donna Kelly
 
fake.address()           #  调用address()方法随机生成地址信息。
# 519 Donna River


# 如果要生成中文的随机数据,我们可以在实例化时给locale参数传入‘zh_CN’这个值:
from faker import Faker           
fake = Faker(locale='zh_CN')       
 
fake.name()                        
# 庞超
 
fake.address()                     
# 河北省辛集县合川张街p座 489476


# 如果要生成中文繁体字,则可以传入中国台湾这个地区的值'zh_TW'(当然地址显示的是台湾的):
from faker import Faker           
fake = Faker(locale='zh_TW')       
 
fake.name()                        
# 羅婉婷
 
fake.address()                     
# 16934 大里縣水源巷35號之0


# 如果要生成其他语种或地区的数据,我们可以传入相应的地区值:
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 Mainland)
zh_TW - Chinese (China Taiwan)

faker的其他方法

注:个别方法具有针对性,比如province()方法适用中国,但不适用美国及其他一些国家。

地址相关

fake.address()            # 地址
# '香港特别行政区大冶县上街钟街k座 664713'
 
fake.building_number()    # 楼名    
# 'v座'
 
fake.city()               # 完整城市名
# '长春县'
 
fake.city_name()          # 城市名字(不带市县)
# '梧州'
 
fake.city_suffix()        # 城市后缀名
# '市'
 
fake.country()            # 国家名称
# '厄立特里亚'
 
fake.country_code(representation="alpha-2")
# 'BZ'                    # 国家编号
 
fake.district()           # 地区
# '沙湾'

fake.postcode()           # 邮编
# '332991'
 
fake.province()           # 省
# '河北省'
 
fake.street_address()     # 街道地址
# '武汉街D座'
 
fake.street_name()        # 街道名称
# '广州路'
 
fake.street_suffix()      # 街道后缀名
# '路'

汽车相关

fake.license_plate()      # 牌照
# 'ZCO 000'

银行相关

fake.bank_country()          # 银行所属国家
# 'GB'
 
fake.bban()                  # 基本银行账号
# 'TPET9323218579379'          
 
fake.iban()                  # 国际银行代码
# 'GB82IRVM1531009974701'

条形码相关

fake.ean(length=13)    # EAN条形码
# '5456457843465'
 
fake.ean13()           # EAN13条形码
# '2689789887590'
 
fake.ean8()            # EAN8条形码
# '52227936'

颜色相关

fake.color_name()        # 颜色名称
# 'Orange'
 
fake.hex_color()         # 颜色十六进制值
# '#a5cb7c'
 
fake.rgb_color()         # 颜色RGB值
# '15,245,42'
 
fake.rgb_css_color()     # CSS颜色值
# 'rgb(15,70,13)'
 
fake.safe_color_name()   # 安全色
# 'aqua'
 
fake.safe_hex_color()    # 安全色十六进制值
# '#881100'

公司相关

fake.bs()                 # 商业用词
# 'synthesize strategic vortals'
 
fake.catch_phrase()       # 妙句(口号)
# 'Robust even-keeled service-desk'
 
fake.company()            # 公司名称
# '富罳科技有限公司'
 
fake.company_prefix()     # 公司名称前缀
# '商软冠联'
 
fake.company_suffix()     # 公司名称后缀
# '网络有限公司'
转载自:https://juejin.cn/post/7022580411293237255
评论
请登录