您好,登錄后才能下訂單哦!
Python如何用Faker造假數(shù)據(jù),很多新手對此不是很清楚,為了幫助大家解決這個(gè)難題,下面小編將為大家詳細(xì)講解,有這方面需求的人可以來學(xué)習(xí)下,希望你能有所收獲。
在程序測試的時(shí)候,常常需要用到很多數(shù)據(jù)來進(jìn)行測試。
比如姓名、性別、年齡、電話、郵箱等等。
如果手動(dòng)制造數(shù)據(jù)的話,起名字比如“小明”、“小紅”、“張三”、“李四”這些,有沒有考慮這些名字的感受,他們也很累的吧。
再比如密碼,網(wǎng)上排名最爛的密碼,不也是“123456”,“abcdef”,“asdf”這些。
這樣無厘頭地制作數(shù)據(jù)確實(shí)很傷神,效率還低,那該怎么辦?
這時(shí),Python擴(kuò)展庫Faker來了,帶著它那各種各樣的數(shù)據(jù)來了。
先安裝faker
pip install Faker
創(chuàng)建faker對象
from faker import Faker
fake = Faker()
隨機(jī)生成一個(gè)名字
fake.name() # 'Nancy Horton'
上邊生成的名字是英文的,想要個(gè)中文名字怎么辦?
很簡單,在創(chuàng)建Faker對象的時(shí)候,指定語言“中文”就可以。
fake = Faker("zh_CN")
一些常用的語言包括以下等等:
用faker可以生成哪些數(shù)據(jù)呢?
faker 提供了一些Standard Providers,列出了一些較為較為常用的數(shù)據(jù)。
比如生成“地址”信息
In [1]: fake.address()
Out[1]: '北京市大冶市海陵趙路x座 941837'
這里給出的是一整條“地址”的信息,你也可以通過building_number()、city()、street_address()等獲取單個(gè)信息
這些字段其實(shí)記不住也沒什么,需要用哪個(gè)的時(shí)候查閱官方文檔就行。
文檔鏈接
https://faker.readthedocs.io/en/master/providers.html
再比如生成“職位”信息
In [2]: fake.job()
Out[2]: '電氣/電器工程師'
生成python的數(shù)據(jù)類型
# 生成一個(gè)字典
In [3]: fake.pydict()
Out[3]:
{'生產(chǎn)': 'OlmMWPfQMJYxeiJtZSFC',
'有些': 'jUYzbWgDEqvzjiAsubSX',
'資源': 7670,
'應(yīng)用': 804210265906561.0,
'國際': 9113,
'電影': 'https://yangtang.cn/homepage.jsp',
'方面': 'RGfbqIgxqTbnjkGDpoVO',
'為什': 1947,
'地址': 7021,
'時(shí)候': 'oxia@hotmail.com'}
生成user_agent
In [4]: fake.chrome()
Out[4]: 'Mozilla/5.0 (iPad; CPU iPad OS 4_2_1 like Mac OS X) AppleWebKit/531.2 (KHTML, like Gecko) CriOS/55.0.807.0 Mobile/62B715 Safari/531.2'
生成個(gè)人信息
In [5]: fake.profile()
Out[5]:
{'job': '倉庫管理員',
'company': '太極傳媒有限公司',
'ssn': '370302198911123749',
'residence': '云南省桂英市沈北新王路k座 204494',
'current_location': (Decimal('32.942144'), Decimal('95.019663')),
'blood_group': 'O-',
'website': ['https://www.minyan.cn/'],
'username': 'yangwen',
'name': '蔣璐',
'sex': 'M',
'address': '寧夏回族自治區(qū)寧德縣豐都長沙街a座 685268',
'mail': 'oliao@yahoo.com',
'birthdate': datetime.date(1971, 2, 13)}
如果想生成多條個(gè)人信息,可以利用for循環(huán),把每個(gè)字典在添加到列表里,導(dǎo)出一個(gè)DataFrame
看完上述內(nèi)容是否對您有幫助呢?如果還想對相關(guān)知識(shí)有進(jìn)一步的了解或閱讀更多相關(guān)文章,請關(guān)注億速云行業(yè)資訊頻道,感謝您對億速云的支持。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。